polymorphism.core
This commit is contained in:
29
examples/polymorphism.core
Normal file
29
examples/polymorphism.core
Normal file
@@ -0,0 +1,29 @@
|
||||
|
||||
/*
|
||||
PushStruct :: (a: *MA.Arena, $T: Type): *$T
|
||||
size := size_of(Type)
|
||||
result := PushSize(a, size)
|
||||
return result
|
||||
|
||||
Array :: struct($T: Type)
|
||||
data: *T
|
||||
len: int
|
||||
cap: int
|
||||
|
||||
Array(int)
|
||||
|
||||
QueueAddSLL(list: $List, node: $Node, first: #Identifier = first, last: #Identifier = last, next: #Identifier = next)
|
||||
|
||||
ArrayAdd(array: $Array, item: $Item, data: #Identifier = data, len: #Identifier = len, len: #Identifier = cap)
|
||||
|
||||
QueueAddSLL(list: $List, node: $Node, $first = first, $last = last, $next = next)
|
||||
if list.first == 0
|
||||
list.first = list.last = node
|
||||
else
|
||||
list.last = list.last.next = node
|
||||
|
||||
*/
|
||||
|
||||
main :: (argc: int, argv: **char): int
|
||||
$i := 10
|
||||
return 0
|
||||
Reference in New Issue
Block a user