on_call_node_enter(node)
Show source
def on_call_node_enter (node )
return if @namespace_stack .empty?
content = extract_test_case_name (node )
if content
append_document_symbol (
name: content ,
selection_range: range_from_node (node ),
range: range_from_node (node ),
)
end
receiver = node .receiver
return if receiver && ! receiver .is_a? (Prism :: SelfNode )
message = node .message
case message
when * Support :: Callbacks :: ALL , "validate"
handle_all_arg_types (node , T .must (message ))
when "validates" , "validates!" , "validates_each" , "belongs_to" , "has_one" , "has_many" ,
"has_and_belongs_to_many" , "attr_readonly" , "scope"
handle_symbol_and_string_arg_types (node , T .must (message ))
when "validates_with"
handle_class_arg_types (node , T .must (message ))
end
end
on_class_node_enter(node)
Show source
def on_class_node_enter (node )
add_to_namespace_stack (node )
end
on_class_node_leave(node)
Show source
def on_class_node_leave (node )
remove_from_namespace_stack (node )
end
on_module_node_enter(node)
Show source
def on_module_node_enter (node )
add_to_namespace_stack (node )
end
on_module_node_leave(node)
Show source
def on_module_node_leave (node )
remove_from_namespace_stack (node )
end