31#ifndef SILICON_NODE_HPP
32#define SILICON_NODE_HPP
68 NodeGraph::adjacency_iterator m_itr;
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
Node(const Node &)=delete
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
boost::adjacency_list< ContainerT, ContainerT, boost::bidirectionalS, T > Graph
Container for representing relationships between objects.
gsl::strict_not_null< T > NotNull