59 assert(
dynamic_cast<const CircleNode *
>(node) !=
nullptr);
61 ShapeInferenceAlgorithm alg;
62 shape =
dynamic_cast<const CircleNode *
>(node)->accept(&alg);
Logical unit of computation.
virtual const Dialect * dialect(void) const =0
Return "Dialect" identifier that this node belongs to.
static loco::Dialect * get(void)
NodeShape shape_get(const Node *node)
virtual T visit(const CircleNode *)
Default fallback.
bool infer(const loco::Node *, loco::NodeShape &) const final
Infer node's shape.
bool recognize(const loco::Dialect *) const final
Return true if this rule recognizes a given dialect.