Foo::Bar ||= baz ^^^^^^^^^^^^^^^^
Dispatch enter and leave events for KeywordRestParameterNode
nodes and continue walking the tree.
Return the best specification that contains the file matching path
, among those already activated.
Return the best specification in the record that contains the file matching path
, among those already activated.
When there is an invalid block with a keyword missing an end right before another end, it is unclear where which keyword is missing the end
Take this example:
class Dog # 1 def bark # 2 puts "woof" # 3 end # 4
However due to github.com/ruby/syntax_suggest/issues/32 the problem line will be identified as:
> class Dog # 1
Because lines 2, 3, and 4 are technically valid code and are expanded first, deemed valid, and hidden. We need to un-hide the matching end line 4. Also work backwards and if there’s a mis-matched keyword, show it too
def deconstruct_keys
: (Array keys) -> { node_id: Integer
, location: Location
, name: Symbol
, name_loc
: Location
, operator_loc
: Location
, value: Prism::node }
def deconstruct_keys
: (Array keys) -> { node_id: Integer
, location: Location
, name: Symbol
, name_loc
: Location
, operator_loc
: Location
, value: Prism::node }
def deconstruct_keys
: (Array keys) -> { node_id: Integer
, location: Location
, name: Symbol
, name_loc
: Location
, binary_operator_loc
: Location
, value: Prism::node, binary_operator
: Symbol
}
def deconstruct_keys
: (Array keys) -> { node_id: Integer
, location: Location
, target: ConstantPathNode
, operator_loc
: Location
, value: Prism::node }
def deconstruct_keys
: (Array keys) -> { node_id: Integer
, location: Location
, parent: Prism::node?, name: Symbol
?, delimiter_loc
: Location
, name_loc
: Location
}
def deconstruct_keys
: (Array keys) -> { node_id: Integer
, location: Location
, target: ConstantPathNode
, binary_operator_loc
: Location
, value: Prism::node, binary_operator
: Symbol
}
def deconstruct_keys
: (Array keys) -> { node_id: Integer
, location: Location
, target: ConstantPathNode
, operator_loc
: Location
, value: Prism::node }
def deconstruct_keys
: (Array keys) -> { node_id: Integer
, location: Location
, parent: Prism::node?, name: Symbol
?, delimiter_loc
: Location
, name_loc
: Location
}
def deconstruct_keys
: (Array keys) -> { node_id: Integer
, location: Location
, target: ConstantPathNode
, operator_loc
: Location
, value: Prism::node }
def deconstruct_keys
: (Array keys) -> { node_id: Integer
, location: Location
, name: Symbol
}
def deconstruct_keys
: (Array keys) -> { node_id: Integer
, location: Location
, name: Symbol
}
def deconstruct_keys
: (Array keys) -> { node_id: Integer
, location: Location
, name: Symbol
, name_loc
: Location
, value: Prism::node, operator_loc
: Location
}