class Puppet::Pops::Evaluator::LiteralEvaluator
Literal values for String (not containing interpolation) Numbers Booleans Undef (produces nil) Array Hash QualifiedName Default (produced :default) Regular Expression (produces ruby regular expression)
Not considered literal QualifiedReference # i.e. File, FooBar
Constants
- COMMA_SEPARATOR
Public Class Methods
new()
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 22 def initialize 23 @@literal_visitor ||= Visitor.new(self, "literal", 0, 0) 24 end
Public Instance Methods
literal(ast)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 26 def literal(ast) 27 @@literal_visitor.visit_this_0(self, ast) 28 end
literal_ConcatenatedString(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 70 def literal_ConcatenatedString(o) 71 # use double quoted string value if there is no interpolation 72 throw :not_literal unless o.segments.size == 1 && o.segments[0].is_a?(Model::LiteralString) 73 o.segments[0].value 74 end
literal_Factory(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 34 def literal_Factory(o) 35 literal(o.model) 36 end
literal_LiteralBoolean(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 54 def literal_LiteralBoolean(o) 55 o.value 56 end
literal_LiteralDefault(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 62 def literal_LiteralDefault(o) 63 :default 64 end
literal_LiteralHash(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 80 def literal_LiteralHash(o) 81 o.entries.reduce({}) do |result, entry| 82 result[literal(entry.key)] = literal(entry.value) 83 result 84 end 85 end
literal_LiteralList(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 76 def literal_LiteralList(o) 77 o.values.map {|v| literal(v) } 78 end
literal_LiteralNumber(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 50 def literal_LiteralNumber(o) 51 o.value 52 end
literal_LiteralRegularExpression(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 66 def literal_LiteralRegularExpression(o) 67 o.value 68 end
literal_LiteralString(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 42 def literal_LiteralString(o) 43 o.value 44 end
literal_LiteralUndef(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 58 def literal_LiteralUndef(o) 59 nil 60 end
literal_Object(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 30 def literal_Object(o) 31 throw :not_literal 32 end
literal_Program(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 38 def literal_Program(o) 39 literal(o.body) 40 end
literal_QualifiedName(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 46 def literal_QualifiedName(o) 47 o.value 48 end