Class: Filigree::SingleObjectPattern

Inherits:
BasicPattern show all
Extended by:
AbstractClass
Defined in:
lib/filigree/match.rb

Overview

An abstract class that matches only a single object to a single pattern.

Direct Known Subclasses

BindingPattern, LiteralPattern

Instance Method Summary collapse

Methods included from AbstractClass

abstract_method, extended, install_icvars, new

Methods inherited from BasicPattern

#as, #match_pattern_element

Constructor Details

#initialize(pattern_elem) ⇒ SingleObjectPattern

Create a new pattern with a single element.

Parameters:

  • pattern_elem (Object)

    Object representing the pattern



323
324
325
# File 'lib/filigree/match.rb', line 323

def initialize(pattern_elem)
  @pattern_elem = pattern_elem
end

Instance Method Details

#match?(object, env) ⇒ Boolean

Testing the pattern only involves testing the single pattern element.

Parameters:

  • object (Object)

    Object to test pattern against

  • env (Object)

    Binding environment

Returns:

  • (Boolean)


334
335
336
# File 'lib/filigree/match.rb', line 334

def match?(object, env)
  match_pattern_element(@pattern_elem, object, env)
end