pike.git / lib / modules / Crypto.pmod

version» Context lines:

pike.git/lib/modules/Crypto.pmod:6:      static private mixed crypto_module;      mixed `[](string name)   {    catch {    return (crypto_module[name]    || ((program) ("Crypto/" + name))    || ((object) ("Crypto/" + name + ".pmod")));    }; -  return ([])[0]; // UNDEFINED +  return UNDEFINED;   }    -  + static private array(string) crypto_indices; +    array(string) _indices() { -  +  if(crypto_indices) return crypto_indices + ({});    array tmp = ( __FILE__ / "/");    tmp[-1] = "Crypto";    tmp = get_dir(tmp*"/"); -  return map(glob("*.pike",tmp)+glob("*.pmod",tmp), +  crypto_indices = map(glob("*.pike",tmp)+glob("*.pmod",tmp),    lambda(string in){ return in[..sizeof(in)-6]; }) +    indices(crypto_module); -  +  return crypto_indices + ({});   }      void create()   { -  catch { crypto_module=master()->resolv("_Crypto"); }; -  if(!crypto_module) + #if constant(_Crypto) +  crypto_module=master()->resolv("_Crypto"); + #else    crypto_module=master()->resolv("_Lobotomized_Crypto"); -  + #endif   }