com.github.arturopala.bufferandslice
Type members
Classlikes
Growable, mutable array of values.
Growable, mutable array of values.
- Type parameters:
- T
type of the underlying array items
- Companion:
- object
Common buffer functions impl for array-backend buffers.
Common buffer functions impl for array-backend buffers.
Lazy, immutable slice of an underlying array.
Lazy, immutable slice of an underlying array.
- Type parameters:
- T
type of the array's items
- Note:
Truly immutable only if an underlying array kept private or if detached.
- Companion:
- object
Common functions of an array-backed Slice.
Common functions of an array-backed Slice.
- Type parameters:
- T
type of the array's items
- Note:
Truly immutable only if an underlying array kept private, or if detached.
Mutable indexed buffer abstraction. All modifications happens in-place.
Mutable indexed buffer abstraction. All modifications happens in-place.
In addition, the Buffer API offers both Stack- and List-like interfaces. For the purpose of the List-like processing, the head is a top element in the buffer.
- Companion:
- object
Lazy, specialized slice of the array of bytes.
Lazy, specialized slice of the array of bytes.
- Note:
Truly immutable only if an underlying array kept private, or if detached.
- Companion:
- object
Growable, mutable array of values with deferred initialization.
Growable, mutable array of values with deferred initialization.
- Type parameters:
- T
type of the underlying array items
- Value parameters:
- initialLength
initial length of the buffer
- Note:
This is to avoid ClassTag parameters as much as possible, but comes with a price of a few rough corners. Especially, if your type parameter is non-primitive do not try to call asArray and assign result to variable, as it will raise ClassCastException, instead pass the array as a parameter or call methods on it.
- Companion:
- object
Set of functions to update buffers or sequences of indexes values in order to match corresponding buffer operations. Useful to track values and structures movement during buffer modifications.
Set of functions to update buffers or sequences of indexes values in order to match corresponding buffer operations. Useful to track values and structures movement during buffer modifications.
Lazy, specialized slice of the array of integers.
Lazy, specialized slice of the array of integers.
- Note:
Truly immutable only if an underlying array kept private, or if detached.
- Companion:
- object
Lazily mapped slice of an underlying array.
Lazily mapped slice of an underlying array.
- Type parameters:
- T
type of the array's items
- Note:
Truly immutable only if an underlying array kept private, or if detached.
- Companion:
- object
Lazy and immutable slice of a sequence of values.
Lazy and immutable slice of a sequence of values.
- Type parameters:
- T
type of the items of the sequence.
- Note:
As the slice usually wraps over a mutable structure, like an array or a java buffer, and it DOES NOT make an instant copy, any changes to the underlying source will directly affect the slice output unless detached. Detach is a one-time copy operation, and
detached
property is preserved across all operations returning a Slice.- Companion:
- object