LLVM: llvm::iplist< T, Options > Class Template Reference (original) (raw)
An intrusive list with ownership and callbacks specified/controlled by ilist_traits, only with API safe for polymorphic types. More...
#include "[llvm/ADT/ilist.h](ilist%5F8h%5Fsource.html)"
Inheritance diagram for llvm::iplist< T, Options >:
| Public Member Functions | |
|---|---|
| iplist ()=default | |
| iplist (const iplist &X)=delete | |
| iplist & | operator= (const iplist &X)=delete |
| iplist (iplist &&X) | |
| iplist & | operator= (iplist &&X) |
| Public Member Functions inherited from llvm::iplist_impl< simple_ilist< T, Options... >, ilist_traits< T > > | |
| iplist_impl ()=default | |
| iplist_impl & | operator= (const iplist_impl &)=delete |
| ~iplist_impl () | |
| size_type | max_size () const |
| void | swap (iplist_impl &RHS) |
| iterator | insert (iterator where, pointer New) |
| iterator | insertAfter (iterator where, pointer New) |
| void | cloneFrom (const iplist_impl &L2, Cloner clone) |
| Clone another list. | |
| pointer | remove (iterator &IT) |
| iterator | erase (iterator where) |
| void | clearAndLeakNodesUnsafely () |
| Remove all nodes from the list like clear(), but do not call removeNodeFromList() or deleteNode(). | |
| void | clear () |
| void | push_front (pointer val) |
| void | push_back (pointer val) |
| void | pop_front () |
| void | pop_back () |
| void | splice (iterator where, iplist_impl &L2) |
| void | merge (iplist_impl &Right, Compare comp) |
| pointer | getPrevNode (reference N) const |
| Get the previous node, or nullptr for the list head. | |
| pointer | getNextNode (reference N) const |
| Get the next node, or nullptr for the list tail. | |
| Public Member Functions inherited from llvm::ilist_callback_traits< T > | |
| void | addNodeToList (T *) |
| When an MBB is added to an MF, we need to update the parent pointer of the MBB, the MBB numbering, and any instructions in the MBB to be on the right operand list for registers. | |
| void | removeNodeFromList (T *) |
| void | transferNodesFromList (ilist_callback_traits &OldList, Iterator, Iterator) |
| Callback before transferring nodes to this list. |
| Additional Inherited Members | |
|---|---|
| Public Types inherited from llvm::iplist_impl< simple_ilist< T, Options... >, ilist_traits< T > > | |
| using | pointer |
| using | const_pointer |
| using | reference |
| using | const_reference |
| using | value_type |
| using | size_type |
| using | difference_type |
| using | iterator |
| using | const_iterator |
| using | reverse_iterator |
| using | const_reverse_iterator |
| Static Public Member Functions inherited from llvm::ilist_alloc_traits< T > | |
| static void | deleteNode (T *V) |
Detailed Description
template<class T, class... Options>
class llvm::iplist< T, Options >
An intrusive list with ownership and callbacks specified/controlled by ilist_traits, only with API safe for polymorphic types.
The Options parameters are the same as those for simple_ilist. See there for a description of what's available.
Definition at line 327 of file ilist.h.
Constructor & Destructor Documentation
◆ iplist() [1/3]
template<class T, class... Options>
◆ iplist() [2/3]
template<class T, class... Options>
◆ iplist() [3/3]
template<class T, class... Options>
Member Function Documentation
◆ operator=() [1/2]
template<class T, class... Options>
◆ operator=() [2/2]
template<class T, class... Options>
The documentation for this class was generated from the following file:
- include/llvm/ADT/ilist.h