class EnvInquiry::Env

Public Class Methods

env() click to toggle source
# File lib/env_inquiry.rb, line 7
def env
  ENV
end
inquire() click to toggle source
# File lib/env_inquiry.rb, line 17
def inquire
  env.each_pair do |k,v|
    name = k.downcase

    # wrap env keys as singleton methods on class.
    # returns bools for 'true', 'false'
    define_singleton_method(name.to_sym) do
      case v.to_s.downcase
        when 'true'
          true
        when 'false'
          false
        else
          v
      end
    end

    # define inspection method (method?)
    # true if value is 'true'
    # false if value is 'false'
    # true if a 'present' value
    define_singleton_method("#{name}?".to_sym) do
      case v.to_s.downcase
        when 'true'
          true
        when 'false'
          false
        else
          v.to_s.strip != ''
      end
    end
  end
end
method_missing(name) click to toggle source

return nil for any class methods not defined same as calling

# File lib/env_inquiry.rb, line 13
def method_missing(name)
  return nil
end