abstract Vector<T>(VectorData<T>)
package haxe.ds
A Vector is a storage of fixed size. It can be faster than Array on some targets, and is never slower.
See also:
Static variables
Static methods
staticblit<T>(src:Vector<T>, srcPos:Int, dest:Vector<T>, destPos:Int, len:Int):Void
Copies length
of elements from src
Vector, beginning at srcPos
to
dest
Vector, beginning at destPos
The results are unspecified if length
results in out-of-bounds access,
or if src
or dest
are null
staticinlinecopy<T>(this:VectorData<T>):Vector<T>
Returns a shallow copy of this
Vector.
The elements are not copied and retain their identity, so
a[i] == a.copy()[i]
is true for any valid i
. However,
a == a.copy()
is always false.
staticinlinefromArrayCopy<T>(array:Array<T>):Vector<T>
Creates a new Vector by copying the elements of array
.
This always creates a copy, even on platforms where the internal representation is Array.
The elements are not copied and retain their identity, so
a[i] == Vector.fromArrayCopy(a).get(i)
is true for any valid i.
If array
is null, the result is unspecified.
staticinlinefromData<T>(data:VectorData<T>):Vector<T>
Initializes a new Vector from data
.
Since data
is the internal representation of Vector, this is a no-op.
If data
is null, the corresponding Vector is also null
.
staticinlineget(this:VectorData<T>, index:Int):T
Returns the value at index index
.
If index
is negative or exceeds this.length
, the result is
unspecified.
staticinlinejoin<T>(this:VectorData<T>, sep:String):String
Returns a string representation of this
Vector, with sep
separating
each element.
The result of this operation is equal to Std.string(this[0]) + sep +
Std.string(this[1]) + sep + ... + sep + Std.string(this[this.length-1])
If this
Vector has length 0, the result is the empty String ""
.
If this
has exactly one element, the result is equal to a call to
Std.string(this[0])
.
If sep
is null, the result is unspecified.
staticinlinemap<S>(this:VectorData<T>, f:T ‑> S):Vector<S>
Creates a new Vector by applying function f
to all elements of this
.
The order of elements is preserved.
If f
is null, the result is unspecified.
staticinlineset(this:VectorData<T>, index:Int, val:T):T
Sets the value at index index
to val
.
If index
is negative or exceeds this.length
, the result is
unspecified.
staticinlinesort(this:VectorData<T>, f:(T, T) ‑> Int):Void
Sorts this
Vector according to the comparison function f
, where
f(x,y)
returns 0 if x == y, a positive Int if x > y and a
negative Int if x < y.
This operation modifies this
Vector in place.
The sort operation is not guaranteed to be stable, which means that the order of equal elements may not be retained.
If f
is null, the result is unspecified.
staticinlinetoArray(this:VectorData<T>):Array<T>
Creates a new Array, copy the content from the Vector to it, and returns it.
staticinlinetoData(this:VectorData<T>):VectorData<T>
Extracts the data of this
Vector.
This returns the internal representation type.