28 assert(_uses.size() == 0);
35 for (uint32_t n = 0; n < node->
arity(); ++n)
37 if (
auto pred = node->
arg(n))
50 for (
auto use : node->_uses)
52 auto user = use->user();
53 assert(user !=
nullptr);
63 assert(_from !=
nullptr);
73 auto *uses = &(_from->_uses);
75 while (!uses->empty())
77 auto use = *(uses->begin());
Logical unit of computation.
virtual Node * arg(uint32_t N) const =0
Access N-th argument node.
virtual uint32_t arity(void) const =0
Return the number of arguments.
std::set< Node * > succs(const Node *node)
Enumerate all the successors of a given node.
std::set< Node * > preds(const Node *node)
Enumerate all the predecessors of a given node.
Subst< SubstQualifier::Default > replace(Node *node)