Class: PatternMatch::PatternCondition
Instance Attribute Summary
Attributes inherited from Pattern
#next, #parent, #prev
Instance Method Summary
collapse
#quantifier?
Methods inherited from Pattern
#!@, #&, #ancestors, #append, #quantified?, #quantifier?, #quasibinding, #root, #root?, #to_a, #vars, #|
Constructor Details
Returns a new instance of PatternCondition.
497
498
499
500
|
# File 'lib/pattern-match/core.rb', line 497
def initialize(&condition)
super()
@condition = condition
end
|
Instance Method Details
516
517
518
|
# File 'lib/pattern-match/core.rb', line 516
def inspect
"#<#{self.class.name}: condition=#{@condition.inspect}>"
end
|
#match(vals) ⇒ Object
502
503
504
505
506
507
508
509
|
# File 'lib/pattern-match/core.rb', line 502
def match(vals)
return false unless vals.empty?
if @condition.call
@next ? @next.match(vals) : true
else
false
end
end
|