# You are allowed to redistribute it and sell it, alone or is a part of
# another product.
-# Acces of the environement variables of the process
-import symbol
+# Access to the environment variables of the process
+module environ
+
+import string
# TODO prevoir une structure pour recup tout un environ, le modifier et le passer a process
-redef class Symbol
- # Return environement valued for this symbol
+redef class String
+ # Return environment value for this symbol
+ # If there is no such environment value, then return ""
fun environ: String
do
- var res = to_s.to_cstring.get_environ
+ var res = self.to_cstring.get_environ
# FIXME: There is no proper way to handle NULL C string yet. What a pitty.
var nulstr = once ("".to_cstring.get_environ)
if res != nulstr then
- return new String.from_cstring(res)
+ return res.to_s
else
return ""
end
end
+ fun setenv( v : String ) do to_cstring.setenv( v.to_cstring )
end
redef class NativeString
-# Refinned to add environement bindings
private fun get_environ: NativeString is extern "string_NativeString_NativeString_get_environ_0"
+ private fun setenv( v : NativeString ) is extern "string_NativeString_NativeString_setenv_1"
end