From 48c4fdb095b219ea1d4ce680acf2d955f436e02d Mon Sep 17 00:00:00 2001 From: Sonny Vesali <79886185+sonnyvesali@users.noreply.github.com> Date: Sat, 9 Nov 2024 16:53:00 -0600 Subject: [PATCH 1/6] add class support --- data/fixtures/scopes/dart/class.scope | 15 ++++++++++++ data/fixtures/scopes/dart/className.scope | 23 +++++++++++++++++++ data/playground/dart.dart | 15 +++++++++++- .../common/src/scopeSupportFacets/dart.ts | 2 ++ queries/dart.scm | 14 +++++++++++ 5 files changed, 68 insertions(+), 1 deletion(-) create mode 100644 data/fixtures/scopes/dart/class.scope create mode 100644 data/fixtures/scopes/dart/className.scope diff --git a/data/fixtures/scopes/dart/class.scope b/data/fixtures/scopes/dart/class.scope new file mode 100644 index 0000000000..9b0eef7978 --- /dev/null +++ b/data/fixtures/scopes/dart/class.scope @@ -0,0 +1,15 @@ +class MyClass { + +} +--- + +[Content] = +[Removal] = +[Domain] = 0:0-2:1 + >--------------- +0| class MyClass { +1| +2| } + -< + +[Insertion delimiter] = "\n\n" diff --git a/data/fixtures/scopes/dart/className.scope b/data/fixtures/scopes/dart/className.scope new file mode 100644 index 0000000000..a093ad4940 --- /dev/null +++ b/data/fixtures/scopes/dart/className.scope @@ -0,0 +1,23 @@ +class MyClass { + +} +--- + +[Content] = +[Domain] = 0:6-0:13 + >-------< +0| class MyClass { + +[Removal] = 0:6-0:14 + >--------< +0| class MyClass { + +[Leading delimiter] = 0:5-0:6 + >-< +0| class MyClass { + +[Trailing delimiter] = 0:13-0:14 + >-< +0| class MyClass { + +[Insertion delimiter] = " " diff --git a/data/playground/dart.dart b/data/playground/dart.dart index 93cc1f6a94..d62599aff9 100644 --- a/data/playground/dart.dart +++ b/data/playground/dart.dart @@ -1,5 +1,14 @@ foo() { - if (true) {} + final hi = ''; + if (hi.isNotEmpty) { + + // + } + + + else if (true) { + // + } final list = [1, 2, 3]; @@ -7,3 +16,7 @@ foo() { 'hi': 1, }; } + +class Something{ + +} \ No newline at end of file diff --git a/packages/common/src/scopeSupportFacets/dart.ts b/packages/common/src/scopeSupportFacets/dart.ts index 9ba7239305..aeb0a213af 100644 --- a/packages/common/src/scopeSupportFacets/dart.ts +++ b/packages/common/src/scopeSupportFacets/dart.ts @@ -8,4 +8,6 @@ export const dartScopeSupport: LanguageScopeSupportFacetMap = { ifStatement: supported, list: supported, map: supported, + class: supported, + className: supported, }; diff --git a/queries/dart.scm b/queries/dart.scm index f9d5e26430..c6d3543f7b 100644 --- a/queries/dart.scm +++ b/queries/dart.scm @@ -16,3 +16,17 @@ (set_or_map_literal) (map_pattern) ] @map + +;;!! class Foo {} +;;! ^^^^^^^^^^^^ +( + [ + (class_definition + name: (_) @className + ) + (class_definition + + name: (_) @className + ) + ] @class +) From 8a965fff6f7d7b9707c6d54be1f06a180ec01b6f Mon Sep 17 00:00:00 2001 From: Sonny Vesali <79886185+sonnyvesali@users.noreply.github.com> Date: Sun, 10 Nov 2024 07:32:56 -0600 Subject: [PATCH 2/6] refactor class queries and fixtures --- data/fixtures/scopes/dart/className.scope | 10 ++++++++-- queries/dart.scm | 5 +---- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/data/fixtures/scopes/dart/className.scope b/data/fixtures/scopes/dart/className.scope index a093ad4940..587c9e2102 100644 --- a/data/fixtures/scopes/dart/className.scope +++ b/data/fixtures/scopes/dart/className.scope @@ -3,8 +3,7 @@ class MyClass { } --- -[Content] = -[Domain] = 0:6-0:13 +[Content] = 0:6-0:13 >-------< 0| class MyClass { @@ -20,4 +19,11 @@ class MyClass { >-< 0| class MyClass { +[Domain] = 0:0-2:1 + >--------------- +0| class MyClass { +1| +2| } + -< + [Insertion delimiter] = " " diff --git a/queries/dart.scm b/queries/dart.scm index c6d3543f7b..7d6d2bf82f 100644 --- a/queries/dart.scm +++ b/queries/dart.scm @@ -21,12 +21,9 @@ ;;! ^^^^^^^^^^^^ ( [ - (class_definition - name: (_) @className - ) (class_definition name: (_) @className ) - ] @class + ] @class @className.domain ) From 591fb87a7d1fedabb76756ca857b1a3e9c307d7e Mon Sep 17 00:00:00 2001 From: Sonny Vesali <79886185+sonnyvesali@users.noreply.github.com> Date: Sun, 10 Nov 2024 14:59:24 -0600 Subject: [PATCH 3/6] format dart query file --- queries/dart.scm | 2 -- 1 file changed, 2 deletions(-) diff --git a/queries/dart.scm b/queries/dart.scm index 7d6d2bf82f..a29a3063c4 100644 --- a/queries/dart.scm +++ b/queries/dart.scm @@ -1,4 +1,3 @@ - ;;!! if () {} ;;! ^^^^^^^^ (if_statement) @ifStatement @@ -22,7 +21,6 @@ ( [ (class_definition - name: (_) @className ) ] @class @className.domain From 7e25cebfba829405d87a52403222769d94fc32f2 Mon Sep 17 00:00:00 2001 From: Sonny Vesali <79886185+sonnyvesali@users.noreply.github.com> Date: Mon, 11 Nov 2024 15:00:21 -0600 Subject: [PATCH 4/6] remove brackets in dart class def --- queries/dart.scm | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/queries/dart.scm b/queries/dart.scm index a29a3063c4..d04a944413 100644 --- a/queries/dart.scm +++ b/queries/dart.scm @@ -19,9 +19,8 @@ ;;!! class Foo {} ;;! ^^^^^^^^^^^^ ( - [ - (class_definition - name: (_) @className - ) - ] @class @className.domain + + (class_definition + name: (_) @className + ) @class @className.domain ) From 11b84662f18f77af05f3514743837b68706bc1c0 Mon Sep 17 00:00:00 2001 From: Sonny Vesali <79886185+sonnyvesali@users.noreply.github.com> Date: Mon, 11 Nov 2024 16:07:41 -0600 Subject: [PATCH 5/6] remove: outer paren in class def --- queries/dart.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/queries/dart.scm b/queries/dart.scm index d04a944413..1539251e6a 100644 --- a/queries/dart.scm +++ b/queries/dart.scm @@ -18,9 +18,7 @@ ;;!! class Foo {} ;;! ^^^^^^^^^^^^ -( - (class_definition - name: (_) @className - ) @class @className.domain -) +(class_definition + name: (_) @className +) @class @className.domain From 7fe3a1e2410592a3805be243cd366bb7c4a9b609 Mon Sep 17 00:00:00 2001 From: Pokey Rule <755842+pokey@users.noreply.github.com> Date: Tue, 12 Nov 2024 20:49:45 +0000 Subject: [PATCH 6/6] Update dart.scm --- queries/dart.scm | 1 - 1 file changed, 1 deletion(-) diff --git a/queries/dart.scm b/queries/dart.scm index 1539251e6a..26a6c331b0 100644 --- a/queries/dart.scm +++ b/queries/dart.scm @@ -18,7 +18,6 @@ ;;!! class Foo {} ;;! ^^^^^^^^^^^^ - (class_definition name: (_) @className ) @class @className.domain