Special method ‣ slice(start, end) - chung-leong/zigar GitHub Wiki

This method creates a copy of a particular portion of the pointer's target, indicated by start and end (not inclusive). Negative indices are counted from the end of the parent slice. Example:

pub const PtrI32 = []i32;
import { PtrI32 } from './slice-example-1.zig';

const sliceO = new PtrI32([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ]);
const sliceA = sliceO.slice(1, 5);
console.log('SliceA before:', [ ...sliceA ]);
sliceA[0] = 100;
console.log('SliceA after:', [ ...sliceA ]);
console.log('SliceO after:', [ ...sliceO ]);

const sliceB = sliceO.slice(-9, -1);
console.log('SliceB:', [ ...sliceB ]);

const sliceC = sliceO.slice();
console.log('SliceC:', [ ...sliceC ]);
sliceA before: [ 1, 2, 3, 4 ]
sliceA after: [ 100, 2, 3, 4 ]
sliceO after: [
  0, 1, 2, 3, 4,
  5, 6, 7, 8, 9
]
sliceB: [
  1, 2, 3, 4,
  5, 6, 7, 8
]
sliceC: [
  0, 1, 2, 3, 4,
  5, 6, 7, 8, 9
]

Special methods