Class: Metamorpher::Builders::Ruby::VariableReplacementVisitor
Instance Attribute Summary collapse
Instance Method Summary
collapse
#visit
Constructor Details
7
8
9
10
|
# File 'lib/metamorpher/builders/ruby/variable_replacement_visitor.rb', line 7
def initialize(variable_name, replacement)
@variable_name = variable_name
@replacement = replacement
end
|
Instance Attribute Details
#replacement ⇒ Object
Returns the value of attribute replacement.
5
6
7
|
# File 'lib/metamorpher/builders/ruby/variable_replacement_visitor.rb', line 5
def replacement
@replacement
end
|
#variable_name ⇒ Object
Returns the value of attribute variable_name.
5
6
7
|
# File 'lib/metamorpher/builders/ruby/variable_replacement_visitor.rb', line 5
def variable_name
@variable_name
end
|
Instance Method Details
#visit_literal(literal) ⇒ Object
12
13
14
15
16
17
|
# File 'lib/metamorpher/builders/ruby/variable_replacement_visitor.rb', line 12
def visit_literal(literal)
Terms::Literal.new(
name: literal.name,
children: literal.children.map { |child| visit(child) }
)
end
|
#visit_term(term) ⇒ Object
27
28
29
|
# File 'lib/metamorpher/builders/ruby/variable_replacement_visitor.rb', line 27
def visit_term(term)
term
end
|
#visit_variable(variable) ⇒ Object
19
20
21
22
23
24
25
|
# File 'lib/metamorpher/builders/ruby/variable_replacement_visitor.rb', line 19
def visit_variable(variable)
if variable.name == variable_name
replacement
else
variable
end
end
|