# File lib/cim/type.rb, line 154 def matches? x # puts "Type#matches? : >#{self}<{#{self.class}}.matches?>#{x.inspect}<{#{x.class}}" case x when CIM::Type, CIM::Variant return true if x.type == @type return true if MATCHES[@type].include? x.type false when ::Symbol return true if @type == x return true if MATCHES[@type].include? x false when ::Array return false unless self.is_a? CIM::Array x.each do |v| return false unless matches_value @type,v end true else matches_value @type, x end end