aboutsummaryrefslogtreecommitdiff
path: root/builtins/array.c
diff options
context:
space:
mode:
Diffstat (limited to 'builtins/array.c')
-rw-r--r--builtins/array.c50
1 files changed, 25 insertions, 25 deletions
diff --git a/builtins/array.c b/builtins/array.c
index 2d45591c..4e8bf20c 100644
--- a/builtins/array.c
+++ b/builtins/array.c
@@ -261,54 +261,54 @@ public array_t Array$sample(array_t arr, int64_t n, array_t weights, const TypeI
return selected;
}
-public array_t Array$from(array_t *array, int64_t first)
+public array_t Array$from(array_t array, int64_t first)
{
if (first < 0)
- first = array->length + first + 1;
+ first = array.length + first + 1;
- if (first < 1 || first > array->length)
- return (array_t){.atomic=array->atomic};
+ if (first < 1 || first > array.length)
+ return (array_t){.atomic=array.atomic};
return (array_t){
- .atomic=array->atomic,
- .data=array->data + array->stride*(first-1),
- .length=array->length - first + 1,
- .stride=array->stride,
- .data_refcount=array->data_refcount,
+ .atomic=array.atomic,
+ .data=array.data + array.stride*(first-1),
+ .length=array.length - first + 1,
+ .stride=array.stride,
+ .data_refcount=array.data_refcount,
};
}
-public array_t Array$to(array_t *array, int64_t last)
+public array_t Array$to(array_t array, int64_t last)
{
if (last < 0)
- last = array->length + last + 1;
+ last = array.length + last + 1;
- if (last > array->length)
- last = array->length;
+ if (last > array.length)
+ last = array.length;
if (last == 0)
- return (array_t){.atomic=array->atomic};
+ return (array_t){.atomic=array.atomic};
return (array_t){
- .atomic=array->atomic,
- .data=array->data,
+ .atomic=array.atomic,
+ .data=array.data,
.length=last,
- .stride=array->stride,
- .data_refcount=array->data_refcount,
+ .stride=array.stride,
+ .data_refcount=array.data_refcount,
};
}
-public array_t Array$by(array_t *array, int64_t stride)
+public array_t Array$by(array_t array, int64_t stride)
{
if (stride == 0)
- return (array_t){.atomic=array->atomic};
+ return (array_t){.atomic=array.atomic};
return (array_t){
- .atomic=array->atomic,
- .data=(stride < 0 ? array->data + (array->stride * (array->length - 1)) : array->data),
- .length=(stride < 0 ? array->length / -stride : array->length / stride) + ((array->length % stride) != 0),
- .stride=array->stride * stride,
- .data_refcount=array->data_refcount,
+ .atomic=array.atomic,
+ .data=(stride < 0 ? array.data + (array.stride * (array.length - 1)) : array.data),
+ .length=(stride < 0 ? array.length / -stride : array.length / stride) + ((array.length % stride) != 0),
+ .stride=array.stride * stride,
+ .data_refcount=array.data_refcount,
};
}