struct Foo{ abc int } fn (foo Foo) bar_method(){} fn (foo &Foo) bar(){ println(foo.abc) } fn bar_function(foo Foo){} struct Node[T]{ val T left &Node[T] right &Node[T] } pub fn main(){ }