class Tataru::Resolver

resolver for data

Public Class Methods

new(expression) click to toggle source
# File lib/tataru/resolver.rb, line 6
def initialize(expression)
  @expression = expression
end

Public Instance Methods

dependencies() click to toggle source
# File lib/tataru/resolver.rb, line 14
def dependencies
  representation.dependencies
end
representation() click to toggle source
# File lib/tataru/resolver.rb, line 10
def representation
  @representation ||= generate_representation
end

Private Instance Methods

generate_representation() click to toggle source
# File lib/tataru/resolver.rb, line 20
def generate_representation
  case @expression
  when String
    Representations::LiteralRepresentation.new(@expression)
  when Numeric
    Representations::LiteralRepresentation.new(@expression)
  when Array
    Representations::ArrayRepresentation.new(@expression)
  when Hash
    Representations::HashRepresentation.new(@expression)
  when Representations::ResourceRepresentation
    @expression
  when Representations::OutputRepresentation
    @expression
  else
    raise "invalid value: #{@expression.inspect}"
  end
end