New types, Value rework, Sym cleanup

This commit is contained in:
Krzosa Karol
2022-06-02 22:17:28 +02:00
parent 9a58e407a4
commit 173ef843df
11 changed files with 270 additions and 149 deletions

View File

@@ -1,58 +1,58 @@
//-----------------------------------------------------------------------------
// Function types
//-----------------------------------------------------------------------------
test_function :: (thing: int): *int
test_function :: (thing: Int): *Int
function_type: test_function
const_function_alias :: test_function
// null_function: (t: int): *int = null
// null_function: (t: Int): *Int = null
//-----------------------------------------------------------------------------
// Booleans
//-----------------------------------------------------------------------------
boolean: bool = true
value_of_bool: int = cast(boolean: int)
Boolean: Bool = true
value_of_Bool: Int = cast(Boolean: Int)
//-----------------------------------------------------------------------------
// Nulls
//-----------------------------------------------------------------------------
// int_null: int = null
// Int_null: Int = null
// str_null: String = null
// bool_null: bool = null
// Bool_null: Bool = null
//-----------------------------------------------------------------------------
// Compound expressions
//-----------------------------------------------------------------------------
array1: [4]int = [4]int(1,2,3,4)
array2 := [32]int(1,2,3,4)
array3 := [32]int(
array1: [4]Int = [4]Int(1,2,3,4)
array2 := [32]Int(1,2,3,4)
array3 := [32]Int(
[0] = 0,
[1] = 1,
[2] = 2,
[31] = 31,
)
array_item := array1[0]
array_item_imp: int = array2[2]
array_item_imp: Int = array2[2]
//-----------------------------------------------------------------------------
// Pointers
// PoInters
//-----------------------------------------------------------------------------
pointer_decl : *int
variable_from_deref: int = *pointer_decl
pointer_from_var : *int = &variable_from_deref
boolean_pointer := &boolean
poInter_decl : *Int
variable_from_deref: Int = *poInter_decl
poInter_from_var : *Int = &variable_from_deref
Boolean_poInter := &Boolean
//-----------------------------------------------------------------------------
// Implicit type
//-----------------------------------------------------------------------------
implicit_int :: 10
implicit_Int :: 10
implicit_str :: "Hello world"
//-----------------------------------------------------------------------------
// Pointers
// PoInters
//-----------------------------------------------------------------------------
// pointer1: *int = 0
// pointer2: *int = pointer1
// pointer3: **int = 0
// poInter1: *Int = 0
// poInter2: *Int = poInter1
// poInter3: **Int = 0
//-----------------------------------------------------------------------------
// String types
@@ -61,7 +61,7 @@ string1 :: "Test"
string2 :: string1
//-----------------------------------------------------------------------------
// Constant int variables
// Constant Int variables
//-----------------------------------------------------------------------------
thing0 :: 10
thing1 :: thing0 + 11