Current section

Files

Jump to
glenvy src glenvy_ffi.erl
Raw

src/glenvy_ffi.erl

-module(glenvy_ffi).
-export([get_all_env/0, get_env/1, set_env/2, unset_env/1]).
get_all_env() ->
BinVars = lists:map(fun(VarString) ->
[VarName, VarVal] = string:split(VarString, "="),
{list_to_binary(VarName), list_to_binary(VarVal)}
end, os:getenv()),
maps:from_list(BinVars).
get_env(Name) ->
case os:getenv(binary_to_list(Name)) of
false -> {error, nil};
Value -> {ok, list_to_binary(Value)}
end.
set_env(Name, Value) ->
os:putenv(binary_to_list(Name), binary_to_list(Value)),
nil.
unset_env(Name) ->
os:unsetenv(binary_to_list(Name)),
nil.