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 21 def initialize 22 @@literal_visitor ||= Visitor.new(self, "literal", 0, 0) 23 end
Public Instance Methods
literal(ast)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 25 def literal(ast) 26 @@literal_visitor.visit_this_0(self, ast) 27 end
literal_ConcatenatedString(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 69 def literal_ConcatenatedString(o) 70 # use double quoted string value if there is no interpolation 71 throw :not_literal unless o.segments.size == 1 && o.segments[0].is_a?(Model::LiteralString) 72 o.segments[0].value 73 end
literal_Factory(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 33 def literal_Factory(o) 34 literal(o.model) 35 end
literal_LiteralBoolean(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 53 def literal_LiteralBoolean(o) 54 o.value 55 end
literal_LiteralDefault(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 61 def literal_LiteralDefault(o) 62 :default 63 end
literal_LiteralHash(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 79 def literal_LiteralHash(o) 80 o.entries.reduce({}) do |result, entry| 81 result[literal(entry.key)] = literal(entry.value) 82 result 83 end 84 end
literal_LiteralList(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 75 def literal_LiteralList(o) 76 o.values.map {|v| literal(v) } 77 end
literal_LiteralNumber(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 49 def literal_LiteralNumber(o) 50 o.value 51 end
literal_LiteralRegularExpression(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 65 def literal_LiteralRegularExpression(o) 66 o.value 67 end
literal_LiteralString(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 41 def literal_LiteralString(o) 42 o.value 43 end
literal_LiteralUndef(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 57 def literal_LiteralUndef(o) 58 nil 59 end
literal_Object(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 29 def literal_Object(o) 30 throw :not_literal 31 end
literal_Program(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 37 def literal_Program(o) 38 literal(o.body) 39 end
literal_QualifiedName(o)
click to toggle source
# File lib/puppet/pops/evaluator/literal_evaluator.rb 45 def literal_QualifiedName(o) 46 o.value 47 end