Class: PinkSpoon::ConstantResolver::AssignmentFinder
- Inherits:
-
Prism::Visitor
- Object
- Prism::Visitor
- PinkSpoon::ConstantResolver::AssignmentFinder
- Defined in:
- lib/pink_spoon/constant_resolver.rb
Instance Method Summary collapse
- #find(ast) ⇒ Object
-
#initialize(const_name) ⇒ AssignmentFinder
constructor
A new instance of AssignmentFinder.
- #visit_constant_path_write_node(node) ⇒ Object
- #visit_constant_write_node(node) ⇒ Object
Constructor Details
#initialize(const_name) ⇒ AssignmentFinder
Returns a new instance of AssignmentFinder.
470 471 472 473 |
# File 'lib/pink_spoon/constant_resolver.rb', line 470 def initialize(const_name) @const_name = const_name @result = nil end |
Instance Method Details
#find(ast) ⇒ Object
475 476 477 478 |
# File 'lib/pink_spoon/constant_resolver.rb', line 475 def find(ast) visit(ast) @result end |
#visit_constant_path_write_node(node) ⇒ Object
485 486 487 488 |
# File 'lib/pink_spoon/constant_resolver.rb', line 485 def visit_constant_path_write_node(node) @result = node.value if node.target.slice == @const_name super end |
#visit_constant_write_node(node) ⇒ Object
480 481 482 483 |
# File 'lib/pink_spoon/constant_resolver.rb', line 480 def visit_constant_write_node(node) @result = node.value if node.name.to_s == @const_name super end |