module Fat

Constants

FatError

Public Class Methods

at(hash, *args, **keywords) click to toggle source
# File lib/fat.rb, line 4
def self.at(hash, *args, **keywords)
  value = hash

  args.each_with_index do |field, index|
    value = value[field]
    if value.nil?
      if !keywords.empty?
        return keywords[:default]
      else
        raise Fat::FatError, "#{args[0..index].join(".")} is nil"
      end
    end
  end

  value
end

Public Instance Methods

at(*args, **keywords) click to toggle source
# File lib/fat.rb, line 21
def at(*args, **keywords)
  Fat.at(self, *args, keywords)
end