| Home | Download | Screen shots | Discussion | Documentation |
|---|
Public Member Functions | |
| node_ptr (node *node=0) throw (std::bad_alloc) | |
| Construct. | |
| node_ptr (const node_ptr &ptr) throw () | |
| Construct a copy. | |
| ~node_ptr () throw () | |
| Destructor. | |
| operator bool () const throw () | |
| Automatic conversion to bool. | |
| node_ptr & | operator= (const node_ptr &ptr) throw () |
| Assignment operator. | |
| node & | operator * () const throw () |
| Dereference operator. | |
| node * | operator-> () const throw () |
| Access a method of the node. | |
| node * | get () const throw () |
| Get a raw pointer to the node. | |
| void | reset (node *node=0) throw (std::bad_alloc) |
| Reset the node_ptr to point to a different node. | |
| void | swap (node_ptr &ptr) throw () |
Swap the values of the node_ptr and ptr. | |
Private Member Functions | |
| void | dispose () throw () |
| Relinquish ownership of the node. | |
| void | share (std::map< node *, size_t >::value_type *count_ptr) throw () |
| Share ownership of a node. | |
Private Attributes | |
| std::map< node *, size_t >::value_type * | count_ptr |
| Pointer to an entry in count_map. | |
Friends | |
| class | script_node |
| Script nodes can be self-referential, so node_ptr works some special magic. | |
| bool | operator== (const node_ptr &lhs, const node_ptr &rhs) throw () |
| Compare for equality. | |
Related Functions | |
| (Note that these are not member functions.) | |
| bool | operator!= (const node_ptr &lhs, const node_ptr &rhs) throw() |
| Compare for inequality. | |
|
|
Construct.
|
|
|
Construct a copy.
|
|
|
Relinquish ownership of the node. Decrement the reference count; if it drops to zero, call node::shutdown on the node, delete the node, and remove its entry from the count map. |
|
|
Get a raw pointer to the node.
|
|
|
Dereference operator.
|
|
|
Assignment operator.
|
|
|
Reset the node_ptr to point to a different node.
|
|
|
Share ownership of a node.
|
|
||||||||||||
|
Compare for inequality.
|
|
||||||||||||
|
Compare for equality.
|
|
|
Pointer to an entry in count_map.
For internal use only.
|