Skip to content

Commit e978ef2

Browse files
authored
Merge pull request #470 from eed3si9n/wip/nested-package
fix: Fix nested packages
2 parents a2e91c8 + 595ac31 commit e978ef2

File tree

3 files changed

+36
-5
lines changed

3 files changed

+36
-5
lines changed

.github/workflows/ci.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,11 +85,12 @@ jobs:
8585
- name: Run parser and binding tests
8686
uses: tree-sitter/parser-test-action@v2
8787
with:
88+
generate: false
8889
test-rust: true
8990
test-node: true
9091
test-python: true
9192
test-go: true
92-
test-swift: true
93+
test-swift: false
9394

9495
- name: Parse sample files
9596
uses: tree-sitter/parse-action@v4

grammar.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,8 +126,6 @@ module.exports = grammar({
126126

127127
_top_level_definition: $ =>
128128
choice(
129-
$.package_clause,
130-
$.package_object,
131129
$._definition,
132130
$._end_marker,
133131
$.expression,
@@ -150,6 +148,8 @@ module.exports = grammar({
150148
$.type_definition,
151149
$.function_definition,
152150
$.function_declaration,
151+
$.package_clause,
152+
$.package_object,
153153
),
154154

155155
enum_definition: $ =>

test/corpus/definitions.txt

Lines changed: 32 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,11 @@ package a.b
141141
package c {
142142
object A
143143
}
144+
package d {
145+
package e {
146+
object B
147+
}
148+
}
144149

145150
--------------------------------------------------------------------------------
146151

@@ -154,7 +159,17 @@ package c {
154159
(identifier))
155160
(template_body
156161
(object_definition
157-
(identifier)))))
162+
(identifier))))
163+
(package_clause
164+
(package_identifier
165+
(identifier))
166+
(template_body
167+
(package_clause
168+
(package_identifier
169+
(identifier))
170+
(template_body
171+
(object_definition
172+
(identifier)))))))
158173

159174
================================================================================
160175
Package with comma
@@ -210,6 +225,12 @@ package object d extends A {
210225
val hello: String = "there"
211226
}
212227

228+
package object p1 {
229+
package object p2 {
230+
val a = 1
231+
}
232+
}
233+
213234
--------------------------------------------------------------------------------
214235

215236
(compilation_unit
@@ -221,7 +242,16 @@ package object d extends A {
221242
(val_definition
222243
(identifier)
223244
(type_identifier)
224-
(string)))))
245+
(string))))
246+
(package_object
247+
(identifier)
248+
(template_body
249+
(package_object
250+
(identifier)
251+
(template_body
252+
(val_definition
253+
(identifier)
254+
(integer_literal)))))))
225255

226256
================================================================================
227257
Imports

0 commit comments

Comments
 (0)