aboutsummaryrefslogtreecommitdiff
path: root/code/lib/operator.felan
diff options
context:
space:
mode:
Diffstat (limited to 'code/lib/operator.felan')
-rw-r--r--code/lib/operator.felan24
1 files changed, 12 insertions, 12 deletions
diff --git a/code/lib/operator.felan b/code/lib/operator.felan
index b7ac63a..52f4a3a 100644
--- a/code/lib/operator.felan
+++ b/code/lib/operator.felan
@@ -800,28 +800,28 @@ __sub__ :: (left:*anytype,right:i64) -> (@type_of(left)) {
return @sub(left,right);
};
-__get_item__ :: (left:*anytype,index:i64) -> (@type_of(left.*)) {
- return (left + index).*;
+__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;
+__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);
+__get_item_address__ :: (left:**anytype,index:i64) -> (@type_of(left.*)) {
+ return (left.* + index);
};
//---------------------- Array ------------------------
-__get_item__ :: (left:[]anytype,index:i64) -> (@type_of(left.ptr.*)) {
- return (left.ptr + index).*;
+__get_item__ :: (left:*[]anytype,index:i64) -> (@type_of(left.*.ptr.*)) {
+ return (left.*.ptr + index).*;
};
-__set_item__ :: (left:[]anytype,index:i64,item:@type_of(left.ptr.*)) -> (@type_of(left.ptr.*)) {
- return (left.ptr + index).* = item;
+__set_item__ :: (left:*[]anytype,index:i64,item:@type_of(left.*.ptr.*)) -> (@type_of(left.*.ptr.*)) {
+ return (left.*.ptr + index).* = item;
};
-__get_item_address__ :: (left:[]anytype,index:i64) -> (@type_of(left.ptr)) {
- return (left.ptr + index);
+__get_item_address__ :: (left:*[]anytype,index:i64) -> (@type_of(left.*.ptr)) {
+ return (left.*.ptr + index);
};