pike.git / lib / modules / Getopt.pmod

version» Context lines:

pike.git/lib/modules/Getopt.pmod:118:   #define TYPE 1   #define ALIASES 2   #define ENV 3   #define DEF 4      mixed *find_all_options(string *argv, mixed *options, void|int posix_me_harder)   {    mapping quick=([]);    foreach(options, mixed opt)    { -  foreach(stringp(opt[ALIASES])?({opt[ALIASES]}):opt[ALIASES], -  mixed optname) +  mixed aliases=opt[ALIASES]; +  if(!arrayp(aliases)) aliases=({aliases}); +  foreach(aliases, mixed optname)    {    if(optname[0..1]=="--")    {    quick[optname]=opt;    }else{    foreach(optname[1..]/"",string optletter)    {    quick["-"+optletter]=opt;    }    }
pike.git/lib/modules/Getopt.pmod:204:    }    }else{    if(posix_me_harder || getenv("POSIX_ME_HARDER"))    break;    }    }       multiset done=mkmultiset(column(ret, 0));    foreach(options, string *option)    { -  if(done[ret]) continue; +  string name=option[NAME]; +  if(done[name]) continue;    if(sizeof(option) > ENV)    {    mixed foo=option[ENV]; -  string name=option[NAME]; +     if(!foo) continue;    if(stringp(foo)) foo=({foo});    foreach(foo, foo)    {    if(foo=getenv(foo))    {    ret+=({ ({name, foo}) });    done[name]=1;    break;    }