From 6cd973363275ccd8f9c1e562e8e853a29af048e4 Mon Sep 17 00:00:00 2001 From: Andreas Arvidsson Date: Sat, 13 Sep 2025 14:42:29 +0200 Subject: [PATCH] Add support for Java record statements --- .../scopes/java/statement/statement.misc.scope | 10 ++++++++++ packages/common/src/scopeSupportFacets/java.ts | 2 +- queries/java.scm | 16 +++++++--------- 3 files changed, 18 insertions(+), 10 deletions(-) create mode 100644 data/fixtures/scopes/java/statement/statement.misc.scope diff --git a/data/fixtures/scopes/java/statement/statement.misc.scope b/data/fixtures/scopes/java/statement/statement.misc.scope new file mode 100644 index 0000000000..b8579084db --- /dev/null +++ b/data/fixtures/scopes/java/statement/statement.misc.scope @@ -0,0 +1,10 @@ +public record Foo(int a) {} +--- + +[Content] = +[Removal] = +[Domain] = 0:0-0:27 + >---------------------------< +0| public record Foo(int a) {} + +[Insertion delimiter] = "\n" diff --git a/packages/common/src/scopeSupportFacets/java.ts b/packages/common/src/scopeSupportFacets/java.ts index 78f68869f7..ade2743ba2 100644 --- a/packages/common/src/scopeSupportFacets/java.ts +++ b/packages/common/src/scopeSupportFacets/java.ts @@ -114,6 +114,7 @@ export const javaScopeSupport: LanguageScopeSupportFacetMap = { "statement.continue": supported, "statement.resource": supported, "statement.static": supported, + "statement.misc": supported, "statement.iteration.document": supported, "statement.iteration.class": supported, "statement.iteration.interface": supported, @@ -301,7 +302,6 @@ export const javaScopeSupport: LanguageScopeSupportFacetMap = { "value.iteration.enum": notApplicable, // Miscellaneous - "statement.misc": notApplicable, pairDelimiter: notApplicable, regularExpression: notApplicable, environment: notApplicable, diff --git a/queries/java.scm b/queries/java.scm index 197efcc94b..5630223dd7 100644 --- a/queries/java.scm +++ b/queries/java.scm @@ -32,6 +32,7 @@ (field_declaration) (constant_declaration) (static_initializer) + (record_declaration) ;; Disabled on purpose. We don't consider these to be statements. ;; exceptions @@ -138,17 +139,14 @@ ;;!! "string" ;;! ^^^^^^^^ -( - (string_literal) @string @textFragment - (#character-range! @textFragment 1 -1) -) - ;;!! """string""" ;;! ^^^^^^^^^^^^ -( - (text_block) @string @textFragment - (#character-range! @textFragment 3 -3) -) +(string_literal) @string + +[ + (string_fragment) + (multiline_string_fragment) +] @textFragment ;;!! // comment ;;! ^^^^^^^^^^