Sha256: cb5be41b4dd1b038cb508d7d2a045f4372c4b124bd5532eb242da4143f3c4e4e

Contents?: true

Size: 701 Bytes

Versions: 56

Compression:

Stored size: 701 Bytes

Contents

# encoding: utf-8
module FeduxOrgStdlib
  # Abstract process environment
  #
  # @example Init
  #
  #   env = ProcessEnvironment.new
  #   env.fetch('HOME')                # => /home/user
  #   env.fetch('HOME_123', 'default') # => default
  #
  #   env.write('HOME_123' 'you')
  #   env.fetch('HOME_123')            # => you
  #
  class ProcessEnvironment
    private

    attr_reader :environment

    public

    def initialize(environment = ENV)
      @environment = environment
    end

    def fetch(key, default_value = nil)
      environment.to_hash.symbolize_keys.fetch(key.to_sym, default_value).to_s
    end

    def write(key, value)
      environment[key.to_s] = value
    end
  end
end

Version data entries

56 entries across 56 versions & 1 rubygems

Version Path
fedux_org-stdlib-0.11.18 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.17 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.16 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.15 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.14 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.12 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.11 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.9 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.8 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.7 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.6 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.5 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.4 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.3 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.2 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.1 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.11.0 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.10.9 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.10.8 lib/fedux_org_stdlib/process_environment.rb
fedux_org-stdlib-0.10.7 lib/fedux_org_stdlib/process_environment.rb