The latest version of tree-sitter-rust makes several changes, one of which has to do with the way that token trees within macros are parsed, which breaks our name scope within attributes (https://github.com/cursorless-dev/cursorless/blob/main/src/test/suite/fixtures/recorded/languages/rust/changeNameFine2.yml)
We should probably handle this one by constructing a text-based version of name that uses a regex to find structures of the form foo=bar, baz=bongo. We need a regex because Rust token trees don't actually have any structure. We'd probably use something like #1047 here
The latest version of
tree-sitter-rustmakes several changes, one of which has to do with the way that token trees within macros are parsed, which breaks ournamescope within attributes (https://github.com/cursorless-dev/cursorless/blob/main/src/test/suite/fixtures/recorded/languages/rust/changeNameFine2.yml)We should probably handle this one by constructing a text-based version of
namethat uses a regex to find structures of the formfoo=bar, baz=bongo. We need a regex because Rust token trees don't actually have any structure. We'd probably use something like #1047 hereconditionimplementation, asif_let_expressionandif_while_expressionare no longer special node types. We should be able to just remove the special cases for these. Theif_expression[condition]andwhile_expression[condition]patterns should handle them properly without modificationbranchscope type once this one is fixed as well