grammar refactoring: build_visitor fixed & visitors tested

This commit is contained in:
ProgramSnail 2023-04-11 13:49:22 +03:00
parent 3c2d496a85
commit e4802896bd
35 changed files with 118128 additions and 91770 deletions

View file

@ -1,29 +1,21 @@
decl test_arrays : Unit -> Unit
def test_arrays = {
var arr1 = [1, 2, 3]
const arr2 = [] // empty array ??
var arr3 = [] : Int.5 // TODO: decide ??
const arr4= ['a'..'z']
const n = 100;
var @arr5 = @[] : @Int.n // unique pointer (??)
var arr1 = [1; 2; 3]
const arr2 = []
var arr3 = []
const arr4 = 'a'..'z'
const n = 100
var @arr5 = @$Int_n
var @@arr6 = @@[] : @@Int.n // shared pointer (??)
var @@arr6_pointer = @@arr6
var @arr6 = @$Int_n
var @arr6_pointer = @arr6
const elem1 = arr1.1
var elem2 = arr1.1
const *ref1 = *arr1.1 // reference <-> unmanaged pointer (??)
var *ref2 = *arr1.1
; *arr1.1 = 123
const ~ref1 = ~arr1.1
var ~ref2 = ~arr1.1
; ~arr1.1 = 123
; ref1 = arr1.2 // set value
; *ref1 = *ref2 // set reference
// ?? references, that can't change ??
// ?? array access, array mutable access, array get reference to elem ??
// ?? arrays as basic type ??
// ?? custom allocators ??
; ~ref1 = ~ref2 // set reference
}
// ????????????????????