# File lib/puppet/parser/ast.rb, line 96
 96:   def evaluate_match(value, scope)
 97:     obj = self.safeevaluate(scope)
 98: 
 99:     obj   = obj.downcase   if obj.respond_to?(:downcase)
100:     value = value.downcase if value.respond_to?(:downcase)
101: 
102:     obj   = Puppet::Parser::Scope.number?(obj)   || obj
103:     value = Puppet::Parser::Scope.number?(value) || value
104: 
105:     # "" == undef for case/selector/if
106:     obj == value or (obj == "" and value == :undef)
107:   end