#line 31 "/home/ubuntu/felix/src/packages/program.fdoc"
class Env_class[os]
{
virtual fun pathsep: 1 -> string;
fun getenv:string -> string =
"::flx::rtl::strutil::atostr(std::getenv($1.c_str()))"
requires package "flx_strutil", Cxx_headers::cstdlib;
fun issetenv(s:string)=> getenv s != "";
fun getenv(name:string,dflt:string):string=>let result = getenv(name) in
if String::len result != 0uz then result else dflt endif
;
fun getenvlist (name:string) : list[string] =>
split (getenv name, #pathsep)
;
}
instance Env_class[Win32] { fun pathsep() => ";"; }
instance Env_class[Posix] { fun pathsep() => ":"; }
class Env
{
if PLAT_WIN32 do
inherit Env_class[Win32];
else
inherit Env_class[Posix];
done
}