#include <inode_writer.h>
In addition to tree node representation, cttl::inode_writer class also behaves as STL bidirectional iterator.
PreviousLinkT NextLinkT ContainerT
Definition at line 73 of file inode_writer.h.
Public Types | |
| typedef ContainerT | container_T |
| Defines type container. | |
| typedef ContainerT::value_type | value_type |
| Bidirectional iterator: value type of the node. | |
| typedef inode_writer< PreviousLinkT, NextLinkT, ContainerT > | inode_T |
| Defines node type. | |
| typedef inode_writer< PreviousLinkT, NextLinkT, ContainerT > | iterator |
| Defines iterator type. | |
| typedef inode_writer< PreviousLinkT, NextLinkT, ContainerT > | const_iterator |
| Defines const_iterator type. | |
| typedef ContainerT::pointer | pointer |
| Bidirectional iterator: pointer type of the node. | |
| typedef ContainerT::reference | reference |
| Bidirectional iterator: reference type of the node. | |
| typedef ContainerT::const_reference | const_reference |
| Bidirectional iterator: const reference type of the node. | |
| typedef ContainerT::size_type | size_type |
| Bidirectional iterator: size type of the node. | |
| typedef ContainerT::difference_type | difference_type |
| Bidirectional iterator: difference type of the node. | |
| typedef std::bidirectional_iterator_tag | iterator_category |
| Bidirectional iterator: iterator category of the node. | |
Public Member Functions | |
| inode_writer () | |
| Bidirectional iterator: default constructor. | |
| inode_writer (inode_writer< PreviousLinkT, NextLinkT, ContainerT > const &other_) | |
| Bidirectional iterator: copy constructor. | |
| inode_writer (ContainerT &container_) | |
| Constructs new cttl::inode_writer and positions itself at the end. | |
| inode_writer (ContainerT &container_, size_type offset_) | |
| Constructs new cttl::inode_writer at specified position. | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > & | operator= (inode_writer< PreviousLinkT, NextLinkT, ContainerT > const &other_) |
| Bidirectional iterator: assignment operator. | |
| const_reference | operator * () const |
| Bidirectional iterator: dereference operator returns value at the current position. | |
| reference | operator * () |
| Bidirectional iterator: dereference operator returns value at the current position. | |
| value_type const * | operator-> () const |
| Bidirectional iterator: pointer operator returns pointer to value at the current position of the syntax tree node. | |
| value_type * | operator-> () |
| Bidirectional iterator: pointer operator returns pointer to value at the current position of the syntax tree node. | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > & | operator++ () |
| Bidirectional iterator: prefix increment operator of cttl::inode_writer increments current offset. | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > | operator++ (int) |
| Bidirectional iterator: postfix increment operator of cttl::inode_writer increments current offset. | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > & | operator-- () |
| Bidirectional iterator: prefix decrement operator of cttl::inode_writer decrements current offset. | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > | operator-- (int) |
| Bidirectional iterator: postfix decrement operator of cttl::inode_writer decrements current offset. | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > | begin () const |
| Bidirectional iterator: returns copy of cttl::inode_writer with zero offset. | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > | begin (int offset_) const |
| Returns copy of cttl::inode_writer at arbitrary position. | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > | end () const |
| Bidirectional iterator: returns copy of cttl::inode_writer with offset at the end of the underlying container. | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > & | operator= (size_type size_) |
| Assign new offset. | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > & | operator+= (size_type size_) |
| Assign new offset. | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > & | operator-= (size_type size_) |
| Assign new offset. | |
| reference | value (int field_) |
| Returns mutable value stored at specific field of this node. | |
| const_reference | value (int field_) const |
| Returns constant value at specific field of this node. | |
| reference | operator[] (int field_) |
| Returns mutable value stored at specific field of this node. | |
| const_reference | operator[] (int field_) const |
| Returns constant value at specific field of this node. | |
| void | offset (size_type offset_) |
| Sets offset of the node. | |
| size_type | offset () const |
| Returns node offset. | |
| size_type & | offset () |
| Returns reference to node offset. | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > | operator() (int field_) const |
| Returns instance of inode_writer pointing to a specific relative node. | |
| int | next_link () const |
| Returns field pointing to next sibling node. | |
| int | previous_link () const |
| Returns field pointing to previous sibling node. | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > & | operator<<= (int size_) |
| Inserts N copies of value_type() at the end of container, and establishes new node position. | |
| template<typename RhsT> | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > & | operator+= (RhsT rhs_) |
| Positive link with another node. | |
| template<typename RhsT> | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > & | operator-= (RhsT rhs_) |
| Negative link with another node. | |
| template<typename RhsT> | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > & | operator^= (RhsT rhs_) |
| Bidirectional link between two nodes. | |
| template<typename RhsT> | |
| inode_writer< PreviousLinkT, NextLinkT, ContainerT > & | operator *= (RhsT child_) |
| Negative many-to-one link from children to parent. | |
| ContainerT & | container () |
| Returns mutable reference to the underlying STL container. | |
| ContainerT const & | container () const |
| Returns constant reference to the underlying STL container. | |
Static Public Attributes | |
| const int | previous_link_field = PreviousLinkT |
| Constant describing default field pointing to the previous node. | |
| const int | next_link_field = NextLinkT |
| Constant describing default field pointing to the next node. | |
Protected Attributes | |
| size_type | m_offset |
| Offset of the node. | |
| ContainerT * | m_ptr_container |
| Pointer to STL container for data storage. | |
|
|
Defines const_iterator type.
Definition at line 95 of file inode_writer.h. |
|
|
Bidirectional iterator: const reference type of the node.
Definition at line 104 of file inode_writer.h. |
|
|
Defines type container.
Definition at line 83 of file inode_writer.h. |
|
|
Bidirectional iterator: difference type of the node.
Definition at line 110 of file inode_writer.h. |
|
|
Defines node type.
Definition at line 89 of file inode_writer.h. |
|
|
Defines iterator type.
Definition at line 92 of file inode_writer.h. |
|
|
Bidirectional iterator: iterator category of the node.
Definition at line 113 of file inode_writer.h. |
|
|
Bidirectional iterator: pointer type of the node.
Definition at line 98 of file inode_writer.h. |
|
|
Bidirectional iterator: reference type of the node.
Definition at line 101 of file inode_writer.h. |
|
|
Bidirectional iterator: size type of the node.
Definition at line 107 of file inode_writer.h. |
|
|
Bidirectional iterator: value type of the node.
Definition at line 86 of file inode_writer.h. |
|
|
Bidirectional iterator: default constructor.
Definition at line 118 of file inode_writer.h. |
|
|
Bidirectional iterator: copy constructor.
Definition at line 126 of file inode_writer.h. |
|
|
Constructs new cttl::inode_writer and positions itself at the end.
Definition at line 134 of file inode_writer.h. |
|
||||||||||||
|
Constructs new cttl::inode_writer at specified position.
Definition at line 142 of file inode_writer.h. |
|
|
Returns copy of cttl::inode_writer at arbitrary position.
Definition at line 233 of file inode_writer.h. |
|
|
Bidirectional iterator: returns copy of cttl::inode_writer with zero offset.
Definition at line 227 of file inode_writer.h. |
|
|
Returns constant reference to the underlying STL container.
Definition at line 455 of file inode_writer.h. |
|
|
Returns mutable reference to the underlying STL container.
Definition at line 449 of file inode_writer.h. Referenced by cttl::operator<<(). |
|
|
Bidirectional iterator: returns copy of cttl::inode_writer with offset at the end of the underlying container.
Definition at line 241 of file inode_writer.h. |
|
|
Returns field pointing to next sibling node.
Definition at line 322 of file inode_writer.h. |
|
|
Returns reference to node offset.
Definition at line 306 of file inode_writer.h. |
|
|
Returns node offset.
Definition at line 300 of file inode_writer.h. |
|
|
Sets offset of the node.
Definition at line 294 of file inode_writer.h. Referenced by inode_writer::operator *=(), cttl::operator!(), cttl::operator!=(), inode_writer::operator+=(), cttl::operator<(), cttl::operator<<(), cttl::operator<=(), cttl::operator==(), cttl::operator>(), and cttl::operator>=(). |
|
|
Bidirectional iterator: dereference operator returns value at the current position.
Definition at line 167 of file inode_writer.h. |
|
|
Bidirectional iterator: dereference operator returns value at the current position.
Definition at line 161 of file inode_writer.h. |
|
|
Negative many-to-one link from children to parent.
Definition at line 437 of file inode_writer.h. References inode_writer::offset(). |
|
|
Returns instance of inode_writer pointing to a specific relative node.
Definition at line 316 of file inode_writer.h. |
|
|
Bidirectional iterator: postfix increment operator of cttl::inode_writer increments current offset.
Definition at line 200 of file inode_writer.h. |
|
|
Bidirectional iterator: prefix increment operator of cttl::inode_writer increments current offset.
Definition at line 191 of file inode_writer.h. |
|
|
Positive link with another node.
Definition at line 412 of file inode_writer.h. References inode_writer::offset(). |
|
|
Assign new offset.
Definition at line 257 of file inode_writer.h. |
|
|
Bidirectional iterator: postfix decrement operator of cttl::inode_writer decrements current offset.
Definition at line 219 of file inode_writer.h. |
|
|
Bidirectional iterator: prefix decrement operator of cttl::inode_writer decrements current offset.
Definition at line 210 of file inode_writer.h. |
|
|
Negative link with another node.
Definition at line 420 of file inode_writer.h. References inode_writer::value(). |
|
|
Assign new offset.
Definition at line 263 of file inode_writer.h. |
|
|
Bidirectional iterator: pointer operator returns pointer to value at the current position of the syntax tree node.
Definition at line 183 of file inode_writer.h. |
|
|
Bidirectional iterator: pointer operator returns pointer to value at the current position of the syntax tree node.
Definition at line 175 of file inode_writer.h. |
|
|
Inserts N copies of value_type() at the end of container, and establishes new node position.
Definition at line 338 of file inode_writer.h. |
|
|
Assign new offset.
Definition at line 251 of file inode_writer.h. |
|
|
Bidirectional iterator: assignment operator.
Definition at line 150 of file inode_writer.h. References inode_writer::m_offset, and inode_writer::m_ptr_container. |
|
|
Returns constant value at specific field of this node.
Definition at line 288 of file inode_writer.h. |
|
|
Returns mutable value stored at specific field of this node.
Definition at line 282 of file inode_writer.h. |
|
|
Bidirectional link between two nodes.
Definition at line 428 of file inode_writer.h. |
|
|
Returns field pointing to previous sibling node.
Definition at line 328 of file inode_writer.h. |
|
|
Returns constant value at specific field of this node.
Definition at line 276 of file inode_writer.h. |
|
|
Returns mutable value stored at specific field of this node.
Definition at line 270 of file inode_writer.h. Referenced by inode_writer::operator-=(). |
|
|
Offset of the node.
Definition at line 466 of file inode_writer.h. Referenced by inode_writer::operator=(). |
|
|
Pointer to STL container for data storage.
Definition at line 469 of file inode_writer.h. Referenced by inode_writer::operator=(). |
|
|
Constant describing default field pointing to the next node.
Definition at line 80 of file inode_writer.h. |
|
|
Constant describing default field pointing to the previous node.
Definition at line 77 of file inode_writer.h. |
1.3.9.1