41 , m_graphDescriptor(boost::add_vertex(
NotNull<
Node *>(this), s_graph))
79 for (
Node *i : children) {
91 return *
s_graph[
static_cast<NodeGraph::vertex_descriptor
>(*m_itr)];
96 return s_graph[
static_cast<NodeGraph::vertex_descriptor
>(*m_itr)];
110 const auto tmp = *
this;
116 const auto tmp = *
this;
122 return m_itr == other.m_itr;
126 return !(*
this == other);
ChildIterator & operator--()
bool operator==(const ChildIterator &other)
bool operator!=(const ChildIterator &other)
ChildIterator(NodeGraph::adjacency_iterator)
ChildIterator & operator++()
static unsigned s_currentID
NodeGraph::vertex_descriptor m_graphDescriptor
ChildIterator end() const
Gets the end iterator for the children of this node.
Node & addChildren(std::initializer_list< Node * > children)
Add a list of children to this node.
Node()
Construct a new Node object.
ChildIterator begin() const
Gets the begin iterator for the children of this node.
void addChild(NotNull< Node * >)
Add a child to this node.
virtual ~Node()
Destroys this node.
Graph< NotNull< Node * >, GraphList > NodeGraph
gsl::strict_not_null< T > NotNull