mirror of
https://github.com/Nexoniarz/Finch.git
synced 2026-11-03 08:54:25 +00:00
boot: methods (fn T.m, self by address, mutation analysis), str() of any value
Methods are functions whose first parameter is the receiver's address; a method that changes self can't be called on a temporary or a read-only value, and calling one on a variable keeps a parameter from being borrowed. An argument that lives inside the receiver is copied (c.merge(c)). str(x) and print of arrays and structs go through one formatter, as in the C++ compiler. boot.sh: 12 passed, 0 failed, 10 skipped.
This commit is contained in:
parent
873b52565d
commit
051af1a04e
6 changed files with 284 additions and 34 deletions
8
tests/run/methods_basic.out
Normal file
8
tests/run/methods_basic.out
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
clicks: 7 [3, 2, 2] 7
|
||||
clicks: 7 [3, 2, 2]
|
||||
copy: 17 [3, 2, 2, 10]
|
||||
clicks: 14 [3, 2, 2, 3, 2, 2]
|
||||
a: 0 [0] | b: 8 [7, 1]
|
||||
temp: 5 []
|
||||
6
|
||||
24 23
|
||||
Loading…
Reference in a new issue