|
void | DisposeTemporary () |
| Deletes all temporary nodes, such as those of type INodeTransformed, from the array.
|
|
int | IndexOf (INode *node) |
| Finds the specified node in the array and returns its index.
|
|
bool | Contains (INode *node) |
| Checks whether the specified node is in the array.
|
|
int | AppendNode (INode *node, bool allowDups=false, int allocExtra=0) |
| Adds a node to the end of the array.
|
|
int | InsertNode (INode *node, int at, bool allowDups=false) |
| Inserts a node into the array at the specified position.
|
|
bool | RemoveNode (INode *n) |
| Removes the supplied node from the array.
|
|
| Tab () |
| Default constructor.
|
|
| Tab (const Tab &tb) |
| Copy constructor.
|
|
virtual | ~Tab () |
| Destructor.
|
|
void | Init () |
| Initializes a Tab instance.
|
|
int | Count () const |
| Retrieves the number of items in the Tab.
|
|
constexpr size_t | size () const noexcept |
| Retrieves the number of items in the Tab. Standard compliant.
|
|
void | ZeroCount () |
| Resets the number of used items to zero.
|
|
void | SetCount (int n, BOOL resize=TRUE) |
| Sets the number of used items.
|
|
INode * * | Addr (const INT_PTR i) const |
| Returns the address of the i-th item.
|
|
constexpr INode * * | data () noexcept |
| Returns a pointer to the data buffer of tab. Standard compliant.
|
|
constexpr const INode * * | data () const noexcept |
| Returns a const pointer to the data buffer of tab. Standard compliant.
|
|
int | Insert (int at, int num, INode * *el) |
| Inserts items in the Tab at a specified position.
|
|
int | Append (int num, INode * *el, int allocExtra=0) |
| Appends items at the end of the Tab.
|
|
int | Delete (int start, int num) |
| Deletes items from the Tab.
|
|
int | Resize (int num) |
| Changes the number of items allocated in memory.
|
|
void | Shrink () |
| Frees unused Tab items to reduce memory footprint.
|
|
void | Sort (CompareFnc cmp) |
| Sorts the array using the compare function.
|
|
Tab & | operator= (const Tab &tb) |
| Assignment operator.
|
|
INode * & | operator[] (const INT_PTR i) const |
| Accesses the i-th Tab item.
|
|
const INode * * | begin () const |
| Accesses the begin iterator, which is a plain pointer in this case.
|
|
INode * * | begin () |
|
const INode * * | end () const |
| Accesses the end iterator (one past last valid element). Do not dereference.
|
|
INode * * | end () |
|
|
static UtilExport void * | operator new (size_t size) |
| Standard new operator used to allocate objects If there is insufficient memory, an exception will be thrown.
|
|
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e) |
| Standard new operator used to allocate objects if there is insufficient memory, NULL will be returned.
|
|
static UtilExport void * | operator new (size_t size, const char *filename, int line) |
| New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, an exception will be thrown.
|
|
static UtilExport void * | operator new (size_t size, int block_type, const char *filename, int line) |
| New operator used to allocate objects that takes the type of memory, filename and line number where the new was called If there is insufficient memory, an exception will be thrown.
|
|
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e, const char *filename, int line) |
| New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, NULL will be returned.
|
|
static UtilExport void * | operator new (size_t size, unsigned long flags) |
| New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, an exception will be thrown.
|
|
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e, unsigned long flags) |
| New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, NULL will be returned.
|
|
static UtilExport void * | operator new[] (size_t size) |
| New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown.
|
|
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e) |
| New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned.
|
|
static UtilExport void * | operator new[] (size_t size, const char *filename, int line) |
| New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown.
|
|
static UtilExport void * | operator new[] (size_t size, int block_type, const char *filename, int line) |
| New operator used to allocate arrays of objects.
|
|
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e, const char *filename, int line) |
| New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned.
|
|
static UtilExport void * | operator new[] (size_t size, unsigned long flags) |
| New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown.
|
|
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e, unsigned long flags) |
| New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned.
|
|
static UtilExport void | operator delete (void *ptr) |
| Standard delete operator used to deallocate an object If the pointer is invalid, an exception will be thrown.
|
|
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e) |
| Standard delete operator used to deallocate an object If the pointer is invalid, nothing will happen.
|
|
static UtilExport void | operator delete (void *ptr, const char *filename, int line) |
| Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown.
|
|
static UtilExport void | operator delete (void *ptr, int block_type, const char *filename, int line) |
| Delete operator used to deallocate an object that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown.
|
|
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e, const char *filename, int line) |
| Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen.
|
|
static UtilExport void | operator delete (void *ptr, unsigned long flags) |
| Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown.
|
|
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e, unsigned long flags) |
| Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, nothing will happen.
|
|
static UtilExport void | operator delete[] (void *ptr) |
| Standard delete operator used to deallocate an array of objects If the pointer is invalid, an exception will be thrown.
|
|
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e) |
| Standard delete operator used to deallocate an array of objects If the pointer is invalid, nothing will happen.
|
|
static UtilExport void | operator delete[] (void *ptr, const char *filename, int line) |
| Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown.
|
|
static UtilExport void | operator delete[] (void *ptr, int block_type, const char *filename, int line) |
| Delete operator used to deallocate an array of objects that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown.
|
|
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e, const char *filename, int line) |
| Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen.
|
|
static UtilExport void | operator delete[] (void *ptr, unsigned long flags) |
| Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown.
|
|
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e, unsigned long flags) |
| Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown.
|
|
static UtilExport void * | operator new (size_t size, void *placement_ptr) |
| Placement new operator.
|
|
static UtilExport void | operator delete (void *ptr, void *placement_ptr) |
| Placement delete operator.
|
|
static UtilExport void * | aligned_malloc (size_t size, size_t alignment) |
| Allocates memory on a specified alignment boundary.
|
|
static UtilExport void * | aligned_realloc (void *ptr, size_t size, size_t alignment) |
| Reallocates memory on a specified alignment boundary.
|
|
static UtilExport void | aligned_free (void *ptr) |
| Frees a block of memory that was allocated with aligned_malloc/aligned_realloc.
|
|
Class representing a dynamic array of INodes.