diff options
Diffstat (limited to 'code/lib')
-rw-r--r-- | code/lib/operator.felan | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/code/lib/operator.felan b/code/lib/operator.felan index 0c72971..998a053 100644 --- a/code/lib/operator.felan +++ b/code/lib/operator.felan @@ -833,3 +833,15 @@ __set_item__ :: (left:*[]anytype,index:i64,item:@type_of(left.*.ptr.*)) -> (@typ __get_item_address__ :: (left:*[]anytype,index:i64) -> (@type_of(left.*.ptr)) { return (left.*.ptr + index); }; + +__get_item__ :: (left:*[]anytype,index:u64) -> (@type_of(left.*.ptr.*)) { + return (left.*.ptr + index).*; +}; + +__set_item__ :: (left:*[]anytype,index:u64,item:@type_of(left.*.ptr.*)) -> (@type_of(left.*.ptr.*)) { + return (left.*.ptr + index).* = item; +}; + +__get_item_address__ :: (left:*[]anytype,index:u64) -> (@type_of(left.*.ptr)) { + return (left.*.ptr + index); +}; |