diff options
author | A404M <ahmadmahmoudiprogrammer@gmail.com> | 2025-05-31 06:12:28 +0330 |
---|---|---|
committer | A404M <ahmadmahmoudiprogrammer@gmail.com> | 2025-05-31 06:12:28 +0330 |
commit | faf462fe49bf642866175d842a98d721f8f66208 (patch) | |
tree | 9fda469f61e9ea534bb072a49703f736c656fdb4 /code/lib/operator.felan | |
parent | 14c9e2b60f686407dbe7218658809d768351d345 (diff) |
fixing some problems with array access
Diffstat (limited to 'code/lib/operator.felan')
-rw-r--r-- | code/lib/operator.felan | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/code/lib/operator.felan b/code/lib/operator.felan index 2112c57..3da070a 100644 --- a/code/lib/operator.felan +++ b/code/lib/operator.felan @@ -801,4 +801,15 @@ __sub__ :: (left:*anytype,right:i64) -> (@type_of(left)) { return @sub(left,right); }; +__get_item__ :: (left:*anytype,index:i64) -> (@type_of(left.*)) { + return (left + index).*; +}; + +__set_item__ :: (left:*anytype,index:i64,item:@type_of(left.*)) -> (@type_of(left.*)) { + return (left + index).* = item; +}; + +__get_item_address__ :: (left:*anytype,index:i64) -> (@type_of(left)) { + return (left + index); +}; |