Common SmallVector functionality independent of whether T is POD.
Synopsis
Declared in <llvm/ADT/SmallVector.h>
template<
typename T,
typename = void>
class SmallVectorTemplateCommon
: public SmallVectorBase<SmallVectorSizeType<T>>
Description
This is the part of SmallVectorTemplateBase which does not depend on whether the type T is a POD. The extra dummy template argument is used by ArrayRef to avoid unnecessarily requiring T to be complete.
Base Classes
Name |
Description |
This is all the stuff common to all SmallVectors. |
Type Aliases
Name |
Description |
Const iterator over the vector elements. |
|
Const pointer to an element. |
|
Const reference to an element. |
|
Const reverse iterator over the vector elements. |
|
Signed type used to express the distance between iterators. |
|
Mutable iterator over the vector elements. |
|
Mutable pointer to an element. |
|
Mutable reference to an element. |
|
Reverse iterator over the vector elements. |
|
Unsigned type used to express the size of the vector. |
|
Element type stored in the vector. |
Member Functions
Name |
Description |
|
|
Return an iterator to the first element. |
|
Return the number of elements the vector can hold without reallocating. |
|
Return the number of bytes of allocated storage. |
|
Return a pointer to the vector's buffer, even if empty(). |
|
Return true if the vector contains no elements. |
|
Return an iterator past the last element. |
|
|
|
Return the maximum number of elements the vector can hold. |
|
Subscript operators |
|
|
|
|
|
Return the number of elements in the vector. |
|
Return the number of bytes used by the current elements. |
Using Declarations
Protected Member Functions
Name |
Description |
|
Construct common SmallVector state with inline capacity |
Check whether Elt will be invalidated by increasing the size of the vector by N. |
|
Check whether any part of the range will be invalidated by growing. |
|
Check whether any part of the range will be invalidated by clearing. |
|
Check whether Elt will be invalidated by resizing the vector to NewSize. |
|
Return a pointer to the first element of inline storage. |
|
|
|
Return true if First and Last form a valid (possibly empty) range in this vector's storage. |
|
Return true if V is an internal reference to the given range. |
|
Return true if V is an internal reference to this vector. |
|
Return true unless Elt will be invalidated by resizing the vector to NewSize. |
|
Return true if this is a smallvector which has not had dynamic memory allocated for it. |
|
This is a helper for grow() that's out of line to reduce code duplication. This function will report a fatal error if it can't grow at least to |
|
Put this vector in a state of being small. |
|
Set the array data pointer to |
|
Set the array size to |
Protected Static Member Functions
Name |
Description |
The maximum value of the Size_T used. |
|
Reserve enough space to add one element, and return the updated element pointer in case it was a reference to the storage. |
Protected Data Members
Derived Classes
Name |
Description |
SmallVector methods specialized for trivially copyable element types. |
|
SmallVectorTemplateBase<TriviallyCopyable = false> ‐ This is where we put method implementations that are designed to work with non‐trivial T's. |
Created with MrDocs