Sha256: 36f6ad26bb1ca61095b823af7d3ca4ba20dbd295a5fa6f774b1e2d2ebf8154f7

Contents?: true

Size: 457 Bytes

Versions: 4

Compression:

Stored size: 457 Bytes

Contents

module Musterb::ExtractValues
  def value
    @context.value
  end

  def [](symbol)
    @context[symbol]
  end

  def chain(symbol)
    Musterb::Chain.new self[symbol]
  end

  private
  def new_context(value, old_context = @context)
    case value
    when Hash
      Musterb::HashExtractor.new(value, old_context)
    when nil
      Musterb::NullExtractor.new(old_context)
    else
      Musterb::ObjectExtractor.new(value, old_context)
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
musterb-0.2.0 lib/musterb/extract_values.rb
musterb-0.1.2 lib/musterb/extract_values.rb
musterb-0.1.1 lib/musterb/extract_values.rb
musterb-0.1.0 lib/musterb/extract_values.rb