Files
corelang/examples/any_and_variadic_args.core

31 lines
627 B
Core

VariadicArguments :: (string: *char, args: ..)
pass
AnyArguments :: (values: []Any)
for values
Assert(it.type == S64)
Assert(*(values[0].data->*S64) == 10)
Assert(*(values[1].data->*S64) == 20)
// printf :: #foreign (string: *char, args: ..): int
main :: (): int
a := 10
b := 20
values := []Any{a, b}
// printf("Test %d", {a})
for values
Assert(it.type == S64)
AnyArguments({a,b})
VariadicArguments("Test", args = {a+b,b})
Assert(*(values[0].data->*S64) == 10)
Assert(*(values[1].data->*S64) == 20)
// @todo: maybe this is better? Assert(*cast(*S64)values[0].data == 10)
return 0