Class: EnvInterface
Overview
A class that provides an interface to ENV variables with customizable getters and setters
Class Method Summary collapse
-
.all ⇒ Hash
Get all environment variables.
-
.clear ⇒ void
Clear all environment variables.
-
.delete(key) ⇒ String
Delete an environment variable.
-
.exists?(key) ⇒ Boolean
Check if an environment variable exists.
-
.get(key, default: nil, transform: nil) ⇒ Object
Get an environment variable with optional transformation.
-
.set(key, value, transform: nil) ⇒ String
Set an environment variable with optional transformation.
Class Method Details
.all ⇒ Hash
Get all environment variables
53 54 55 |
# File 'lib/env_interface.rb', line 53 def all ENV.to_h end |
.clear ⇒ void
This method returns an undefined value.
Clear all environment variables
59 60 61 |
# File 'lib/env_interface.rb', line 59 def clear ENV.clear end |
.delete(key) ⇒ String
Delete an environment variable
47 48 49 |
# File 'lib/env_interface.rb', line 47 def delete(key) ENV.delete(key) end |
.exists?(key) ⇒ Boolean
Check if an environment variable exists
40 41 42 |
# File 'lib/env_interface.rb', line 40 def exists?(key) ENV.key?(key) end |
.get(key, default: nil, transform: nil) ⇒ Object
Get an environment variable with optional transformation
13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/env_interface.rb', line 13 def get(key, default: nil, transform: nil) value = ENV.fetch(key, nil) if value.nil? default else transform ? transform.call(value) : value end.tap do wwt :env, key, _1 end end |
.set(key, value, transform: nil) ⇒ String
Set an environment variable with optional transformation
30 31 32 33 34 35 |
# File 'lib/env_interface.rb', line 30 def set(key, value, transform: nil) transformed_value = transform ? transform.call(value) : value ENV[key] = transformed_value.to_s.tap do wwt :env, key, _1 end end |