module ENV
Overview
ENV
is a hash-like accessor for environment variables.
Example
# Set env var PORT to a default if not already set
ENV["PORT"] ||= "5000"
# Later use that env var.
puts ENV["PORT"].to_i
NOTE All keys and values are strings. You must take care to cast other types at runtime, e.g. integer port numbers.
Extended Modules
- Enumerable({String, String})
Defined in:
env.crClass Method Summary
-
.[](key : String) : String
Retrieves the value for environment variable named key as a
String
. -
.[]=(key : String, value : String | Nil)
Sets the value for environment variable named key as value.
-
.[]?(key : String) : String | Nil
Retrieves the value for environment variable named key as a
String?
. - .clear : Nil
-
.delete(key : String) : String | Nil
Removes the environment variable named key.
-
.each(& : Tuple(String, String) -> )
Iterates over all
KEY=VALUE
pairs of environment variables, yielding both the key and value. -
.fetch(key, default : T) : String | T forall T
Retrieves a value corresponding to the given key.
-
.fetch(key) : String
Retrieves a value corresponding to the given key.
-
.fetch(key : String, &block : String -> T) : String | T forall T
Retrieves a value corresponding to a given key.
-
.has_key?(key : String) : Bool
Returns
true
if the environment variable named key exists andfalse
if it doesn't. -
.inspect(io)
Writes the contents of the environment to io.
-
.keys : Array(String)
Returns an array of all the environment variable names.
- .pretty_print(pp)
-
.values : Array(String)
Returns an array of all the environment variable values.
Class Method Detail
Retrieves the value for environment variable named key as a String
.
Raises KeyError
if the named variable does not exist.
Sets the value for environment variable named key as value.
Overwrites existing environment variable if already present.
Returns value if successful, otherwise raises an exception.
If value is nil
, the environment variable is deleted.
If key or value contains a null-byte an ArgumentError
is raised.
Retrieves the value for environment variable named key as a String?
.
Returns nil
if the named variable does not exist.
Removes the environment variable named key. Returns the previous value if
the environment variable existed, otherwise returns nil
.
Iterates over all KEY=VALUE
pairs of environment variables, yielding both
the key and value.
ENV.each do |key, value|
puts "#{key} => #{value}"
end
Retrieves a value corresponding to the given key. Return the second argument's value if the key does not exist.
Retrieves a value corresponding to the given key. Raises a KeyError
exception if the
key does not exist.
Retrieves a value corresponding to a given key. Return the value of the block if the key does not exist.
Returns true
if the environment variable named key exists and false
if it doesn't.
ENV.has_key?("NOT_A_REAL_KEY") # => false
ENV.has_key?("PATH") # => true
Returns an array of all the environment variable names.
Returns an array of all the environment variable values.