mirror of
https://codeberg.org/ProgramSnail/lang_2023.git
synced 2026-01-25 13:07:13 +00:00
grammar refactoring: build_visitor fixed & visitors tested
This commit is contained in:
parent
3c2d496a85
commit
e4802896bd
35 changed files with 118128 additions and 91770 deletions
|
|
@ -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
|
||||
}
|
||||
|
||||
// ????????????????????
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue