This article covers features introduced in SpiderMonkey 17
Base class that roots an internal variable-size array of type T
.
Syntax
JS::AutoVectorRooter(JSContext* cx);
Methods
Method | Description |
---|---|
size_t length() const |
Returns the length of the array. |
bool empty() const |
Determines if the array is empty (length is zero). |
bool append(const T &v) |
Appends an element v to the array. |
bool append(const T *ptr, size_t len) |
Appends a sequence of T specified with a pointer ptr and length len to the array. |
bool appendAll(const AutoVectorRooter<T> &other) |
Appends all elements of other to the array. |
bool insert(T *p, const T &val) |
Inserts an element val at the position specified by p . |
void infallibleAppend(const T &v) |
Appends an element v to the array. For use when space has already been reserved. |
void popBack() |
Pops an element from the array. |
T popCopy() |
Pops an element from the array and returns it. |
bool growBy(size_t inc) |
Grows the array by inc . |
bool resize(size_t newLength) |
Resizes the array to newLength. |
void clear() |
Clears all elements. |
bool reserve(size_t newLength) |
Reserves the array with newLength . |
JS::MutableHandle<T> operator[](size_t i) |
Returns to the i -th element as JS::MutableHandle<T> . |
JS::Handle<T> operator[](size_t i) const |
Returns to the i -th element as JS::Handle<T> . |
const T *begin() const |
Returns a pointer to the first element. |
T *begin() |
Returns a pointer to the first element. |
const T *end() const |
Returns a pointer to the element next to the last element. |
T *end() |
Returns a pointer to the element next to the last element. |
Range all() |
Returns the Range of the array. |
const T &back() const |
Returns the last element. |
Description
JS::AutoVectorRooter<T>
holds a variable-size rooted array of type T
.
There are derived classes for the main types:
Class | Parent class |
---|---|
JS::AutoValueVector |
AutoVectorRooter<Value> |
JS::AutoIdVector |
AutoVectorRooter<jsid> |
JS::AutoObjectVector Added in SpiderMonkey 24 |
AutoVectorRooter<JSObject *> |
JS::AutoFunctionVector Added in SpiderMonkey 31 |
AutoVectorRooter<JSFunction *> |
JS::AutoScriptVector |
AutoVectorRooter<JSScript *> |
See Also
- MXR ID Search for
JS::AutoVectorRooter
- MXR ID Search for
JS::AutoValueVector
- MXR ID Search for
JS::AutoIdVector
- MXR ID Search for
JS::AutoObjectVector
- MXR ID Search for
JS::AutoFunctionVector
- MXR ID Search for
JS::AutoScriptVector
JS::AutoValueArray<N>
- fixed-size array ofJS::Value
- bug 677079
- bug 868580 - expose
JS::AutoObjectVector
- bug 848592 - added
JS::AutoFunctionVector
- bug 676281 - added
JS::AutoScriptVector