Class: PinkSpoon::LocalVarDeclarationFinder

Inherits:
Prism::Visitor
  • Object
show all
Defined in:
lib/pink_spoon/server.rb

Overview

Finds the line where a local variable was last declared (parameter or assignment) before a given line number.

Instance Method Summary collapse

Constructor Details

#initialize(var_name, before_line) ⇒ LocalVarDeclarationFinder

Returns a new instance of LocalVarDeclarationFinder.



224
225
226
227
228
# File 'lib/pink_spoon/server.rb', line 224

def initialize(var_name, before_line)
  @var_name    = var_name
  @before_line = before_line
  @candidates  = []
end

Instance Method Details

#lineObject



230
231
232
# File 'lib/pink_spoon/server.rb', line 230

def line
  @candidates.last
end

#visit_block_parameter_node(node) ⇒ Object



242
# File 'lib/pink_spoon/server.rb', line 242

def visit_block_parameter_node(node)               = record(node) || super

#visit_keyword_rest_parameter_node(node) ⇒ Object



241
# File 'lib/pink_spoon/server.rb', line 241

def visit_keyword_rest_parameter_node(node)        = record(node) || super

#visit_local_variable_and_write_node(node) ⇒ Object



237
# File 'lib/pink_spoon/server.rb', line 237

def visit_local_variable_and_write_node(node)      = record(node) || super

#visit_local_variable_operator_write_node(node) ⇒ Object



235
# File 'lib/pink_spoon/server.rb', line 235

def visit_local_variable_operator_write_node(node) = record(node) || super

#visit_local_variable_or_write_node(node) ⇒ Object



236
# File 'lib/pink_spoon/server.rb', line 236

def visit_local_variable_or_write_node(node)       = record(node) || super

#visit_local_variable_write_node(node) ⇒ Object



234
# File 'lib/pink_spoon/server.rb', line 234

def visit_local_variable_write_node(node)          = record(node) || super

#visit_optional_keyword_parameter_node(node) ⇒ Object



244
# File 'lib/pink_spoon/server.rb', line 244

def visit_optional_keyword_parameter_node(node)    = record(node) || super

#visit_optional_parameter_node(node) ⇒ Object



239
# File 'lib/pink_spoon/server.rb', line 239

def visit_optional_parameter_node(node)            = record(node) || super

#visit_required_keyword_parameter_node(node) ⇒ Object



243
# File 'lib/pink_spoon/server.rb', line 243

def visit_required_keyword_parameter_node(node)    = record(node) || super

#visit_required_parameter_node(node) ⇒ Object



238
# File 'lib/pink_spoon/server.rb', line 238

def visit_required_parameter_node(node)            = record(node) || super

#visit_rest_parameter_node(node) ⇒ Object



240
# File 'lib/pink_spoon/server.rb', line 240

def visit_rest_parameter_node(node)                = record(node) || super