slice method

  1. @override
SliceInterfacePortReference slice(
  1. int endIndex,
  2. int startIndex
)
override

Creates a slice of this port from endIndex down to startIndex.

Both indices are inclusive. For example, slice(7, 0) would create a reference to bits 7 through 0 of the port.

Implementation

@override
SliceInterfacePortReference slice(int endIndex, int startIndex) {
  final (newLowerIndex, newUpperIndex) =
      getUpdatedSliceIndices(endIndex, startIndex);

  return SliceInterfacePortReference(
    module,
    portName,
    dimensionAccess: dimensionAccess,
    sliceLowerIndex: newLowerIndex,
    sliceUpperIndex: newUpperIndex,
    interfaceReference: interfaceReference,
  );
}