Method: Puppet::Parser::AST#evaluate_match

Defined in:
lib/vendor/puppet/parser/ast.rb

#evaluate_match(value, scope) ⇒ Object

evaluate ourselves, and match



93
94
95
96
97
98
99
100
101
102
103
104
# File 'lib/vendor/puppet/parser/ast.rb', line 93

def evaluate_match(value, scope)
  obj = self.safeevaluate(scope)

  obj   = obj.downcase   if obj.respond_to?(:downcase)
  value = value.downcase if value.respond_to?(:downcase)

  obj   = Puppet::Parser::Scope.number?(obj)   || obj
  value = Puppet::Parser::Scope.number?(value) || value

  # "" == undef for case/selector/if
  obj == value or (obj == "" and value == :undef) or (obj == :undef and value == "")
end