Add Node#loc?
to determine if a node has a given location
#346
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Following #345, it'd be helpful to have a helper method for
loc.respond_to?(:foo) && loc.foo
, which happens in a number of places in rubocop. I've addedNode#loc?(:foo)
to accomplish this, and redefinedloc_is?
to useloc?
.There were a couple places in rubocop-ast that just used
loc.respond_to?
without the and. I updated the one forternary?
because it should always be present in a ternary. I did not updateMethodDispatchNode#selector
because there's a lot of node types that include that andselector
is not well tested for that (and I'm not sure if it's possible to have akeyword
location in these cases without a value).