Class: Ivar::IvarCollector
- Inherits:
-
Prism::Visitor
- Object
- Prism::Visitor
- Ivar::IvarCollector
- Defined in:
- lib/ivar/targeted_prism_analysis.rb
Overview
Helper visitor that collects all instance variable references
Instance Attribute Summary collapse
-
#references ⇒ Object
readonly
Returns the value of attribute references.
Instance Method Summary collapse
-
#initialize(file_path, method_name) ⇒ IvarCollector
constructor
A new instance of IvarCollector.
- #visit_instance_variable_operator_write_node(node) ⇒ Object
- #visit_instance_variable_read_node(node) ⇒ Object
- #visit_instance_variable_target_node(node) ⇒ Object
- #visit_instance_variable_write_node(node) ⇒ Object
Constructor Details
#initialize(file_path, method_name) ⇒ IvarCollector
Returns a new instance of IvarCollector.
102 103 104 105 106 107 |
# File 'lib/ivar/targeted_prism_analysis.rb', line 102 def initialize(file_path, method_name) super() @file_path = file_path @method_name = method_name @references = [] end |
Instance Attribute Details
#references ⇒ Object (readonly)
Returns the value of attribute references.
100 101 102 |
# File 'lib/ivar/targeted_prism_analysis.rb', line 100 def references @references end |
Instance Method Details
#visit_instance_variable_operator_write_node(node) ⇒ Object
119 120 121 122 |
# File 'lib/ivar/targeted_prism_analysis.rb', line 119 def visit_instance_variable_operator_write_node(node) add_reference(node) true end |
#visit_instance_variable_read_node(node) ⇒ Object
109 110 111 112 |
# File 'lib/ivar/targeted_prism_analysis.rb', line 109 def visit_instance_variable_read_node(node) add_reference(node) true end |
#visit_instance_variable_target_node(node) ⇒ Object
124 125 126 127 |
# File 'lib/ivar/targeted_prism_analysis.rb', line 124 def visit_instance_variable_target_node(node) add_reference(node) true end |
#visit_instance_variable_write_node(node) ⇒ Object
114 115 116 117 |
# File 'lib/ivar/targeted_prism_analysis.rb', line 114 def visit_instance_variable_write_node(node) add_reference(node) true end |