Class: Wood::TreePattern::VariableMatcher

Inherits:
Object
  • Object
show all
Defined in:
lib/wood/tree_pattern/variable_matcher.rb

Instance Method Summary collapse

Constructor Details

#initialize(pattern_builder, var_name) ⇒ VariableMatcher

Returns a new instance of VariableMatcher.



5
6
7
8
# File 'lib/wood/tree_pattern/variable_matcher.rb', line 5

def initialize(pattern_builder, var_name)
  @pattern_builder = pattern_builder
  @var_name        = var_name
end

Instance Method Details

#==(node) ⇒ Object



15
16
17
# File 'lib/wood/tree_pattern/variable_matcher.rb', line 15

def == node
  return true
end

#===(node) ⇒ Object



10
11
12
13
# File 'lib/wood/tree_pattern/variable_matcher.rb', line 10

def === node
  @pattern_builder.add_var(PatternVariable.new(@var_name, node))
  return true
end

#inspectObject



23
24
25
# File 'lib/wood/tree_pattern/variable_matcher.rb', line 23

def inspect
  sexp.inspect
end

#sexpObject



19
20
21
# File 'lib/wood/tree_pattern/variable_matcher.rb', line 19

def sexp
  [:variable_matcher, @var_name]
end

#with_type(type_pattern) ⇒ Object



27
28
29
# File 'lib/wood/tree_pattern/variable_matcher.rb', line 27

def with_type(type_pattern)
  Wood::TreePattern::TypeMatcher.new(self, type_pattern)
end