alter-fixed-array-syntax #3

Merged
sashakoshka merged 6 commits from alter-fixed-array-syntax into main 2022-09-05 09:39:27 -06:00
2 changed files with 25 additions and 42 deletions
Showing only changes of commit 7731fa86a1 - Show all commits

View File

@ -6,9 +6,13 @@ func TestData (test *testing.T) {
checkTree ("../tests/parser/data",
`:arf
---
data ro integer:Int 3202
data ro integerArray16:{Int 16}
data ro integerArrayInitialized:{Int 16}
data ro aInteger:Int 3202
data ro bMutInteger:Int:mut 3202
data ro cIntegerPointer:{Int}
data ro dMutIntegerPointer:{Int}:mut
data ro eIntegerArray16:Int:16
data ro fIntegerArrayVariable:{Int ..}
data ro gIntegerArrayInitialized:Int:16
3948
293
293049
@ -20,19 +24,15 @@ data ro integerArrayInitialized:{Int 16}
0
4785
92
data ro integerArrayVariable:{Int ..}
data ro integerPointer:{Int}
data ro mutInteger:Int:mut 3202
data ro mutIntegerPointer:{Int}:mut
data ro nestedObject:Obj
.that
.bird2 123.8439
.bird3 9328.21348239
data ro jObject:thing.Thing.thing.thing
.this 324
.that 2139
data ro kNestedObject:Obj
.this
.bird0 324
.bird1 "hello world"
data ro object:thing.thing.thing.thing
.that 2139
.this 324
.that
.bird2 123.8439
.bird3 9328.21348239
`, test)
}

View File

@ -1,54 +1,37 @@
:arf
---
data ro integer:Int 3202
data ro aInteger:Int 3202
data ro mutInteger:Int:mut 3202
data ro bMutInteger:Int:mut 3202
data ro integerPointer:{Int}
data ro cIntegerPointer:{Int}
data ro mutIntegerPointer:{Int}:mut
data ro dMutIntegerPointer:{Int}:mut
data ro integerArray16:{Int 16}
data ro eIntegerArray16:Int:16
data ro integerArrayVariable:{Int ..}
data ro fIntegerArrayVariable:{Int ..}
data ro integerArrayInitialized:{Int 16}
data ro gIntegerArrayInitialized:Int:16
3948 293 293049 948 912
340 0 2304 0 4785 92
# TODO: reinstate these two after phrase parsing is implemented
# data wr integerPointerInit:{Int} [& integer]
# data wr hIntegerPointerInit:{Int} [& integer]
# data wr mutIntegerPointerInit:{Int}:mut [& integer]
# data wr iMutIntegerPointerInit:{Int}:mut [& integer]
# TODO: maybe test identifiers somewhere else?
data ro object:thing.thing.
data ro jObject:thing.Thing.
thing.thing
.this 324
.that 2139
data ro nestedObject:Obj
data ro kNestedObject:Obj
.this
.bird0 324
.bird1 "hello world"
.that
.bird2 123.8439
.bird3 9328.21348239
# func ro main
# ---
# # TODO: set should be a special case, checking under itself for object
# member initialization args. it should also check for args in general
# under there which should be treated as array initialization args.
# basically, under a set phrase, it should do the same checks that it
# does under a data section.
#
# [set object:Obj]
# .this 324
# .that 2139
#
# set object:Obj
# .this 324
# .that 2139