Anon funcs works

This commit is contained in:
nub31
2025-07-07 18:18:47 +02:00
parent 8751419169
commit 411c149de4
11 changed files with 212 additions and 219 deletions

View File

@@ -1,39 +1,52 @@
struct name
{
first: cstring
last: cstring
}
// struct name
// {
// first: cstring
// last: cstring
// }
struct human
{
name: name
age: i64
}
// struct human
// {
// name: name
// age: i64
// }
trait printable
{
func print()
}
// trait printable
// {
// func print()
// }
impl printable for human
{
func print() {
c::puts(this.name.first)
}
}
// impl printable for human
// {
// func print() {
// c::puts(this.name.first)
// }
// }
func main(args: []cstring): i64
{
let human = alloc human
{
name = alloc name {
first = "john"
last = "doe"
}
age = 23
}
// let human = alloc human
// {
// name = alloc name {
// first = "john"
// last = "doe"
// }
// age = 23
// }
human.print()
// human.print()
print_result(12, func(num) { return num == 12 })
return 0
}
func print_result(num: u64, delegate: func(u64): bool) {
if (delegate(num))
{
c::puts("true")
}
else
{
c::puts("false")
}
}