class Ivar::IvarCollector

Helper visitor that collects all instance variable references

def add_reference(node)

def add_reference(node)
  location = node.location
  reference = {
    name: node.name.to_sym,
    path: @file_path,
    line: location.start_line,
    column: location.start_column,
    method: @method_name
  }
  @references << reference
end

def initialize(file_path, method_name)

def initialize(file_path, method_name)
  super()
  @file_path = file_path
  @method_name = method_name
  @references = []
end

def visit_instance_variable_operator_write_node(node)

def visit_instance_variable_operator_write_node(node)
  add_reference(node)
  true
end

def visit_instance_variable_read_node(node)

def visit_instance_variable_read_node(node)
  add_reference(node)
  true
end

def visit_instance_variable_target_node(node)

def visit_instance_variable_target_node(node)
  add_reference(node)
  true
end

def visit_instance_variable_write_node(node)

def visit_instance_variable_write_node(node)
  add_reference(node)
  true
end