MCPcopy Create free account
hub / github.com/IoLanguage/io / UArray_stackRange

Function UArray_stackRange

libs/basekit/source/UArray.c:507–530  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

505// slice
506
507UArray UArray_stackRange(const UArray *self, size_t start, size_t size) {
508 UArray s;
509
510 memcpy(&s, self, sizeof(UArray));
511 UArray_changed(&s);
512
513#ifdef UARRAY_DEBUG
514 s.stackAllocated = 1;
515#endif
516
517 if (start < self->size || start == 0) {
518 s.data = self->data + self->itemSize * start;
519 } else {
520 s.data = 0x0;
521 }
522
523 if (start + size <= self->size) {
524 s.size = size;
525 } else {
526 s.size = 0;
527 }
528
529 return s;
530}
531
532UArray *UArray_range(const UArray *self, size_t start, size_t size) {
533 UArray out = UArray_stackRange(self, start, size);

Callers 11

UArray_replace_with_Function · 0.85
UArray_split_Function · 0.85
UArray_endsWith_Function · 0.85
UArray_appendPath_Function · 0.85
UArray_rangeFunction · 0.85
UArray_stackSliceFunction · 0.85
UArray_at_putAll_Function · 0.85
UArray_find_from_Function · 0.85
UArray_rFind_from_Function · 0.85

Calls 1

UArray_changedFunction · 0.85

Tested by

no test coverage detected