From f3e3fd0cdba8d2f9f49be279ac3c0ec87a44609b Mon Sep 17 00:00:00 2001 From: nodist Date: Wed, 3 Jun 2026 15:26:26 -0400 Subject: refs with more impl --- docs/language/ownership.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'docs/language/ownership.md') diff --git a/docs/language/ownership.md b/docs/language/ownership.md index 289846c..9af214b 100644 --- a/docs/language/ownership.md +++ b/docs/language/ownership.md @@ -4,10 +4,36 @@ # Copying +## Assignment + # Moving +## Assignment is not allowed for movable types that are not shared + +## Shared Types + ## To And From Functions +# Passing + +## References + +References are automatically taken if the function signature specifies ref + +```text +inc_push_to_ref : Fn[Ref.x; y] $ ( + x `push y + 1 +) +int_array : Array[I64] $ () +float_array : Array[F64] $ () +@ 0 .. 2 {[x] + inc_push_to_ref `sync (int_array, x) + inc_push_to_ref `sync (float_array, F64 $ x) +} +`log int_array // Array[I64] $ (1; 2; 3) +`log float_array // Array[F64] $ (1.0; 2.0; 3.0) +``` + # Locking ## References -- cgit v1.2.3