frontend/layouter/nodes/
node_enum.rs

1//! A default Enum for a representation of all possible DAG Nodes
2
3use shared_types::Field;
4
5use crate::node_enum;
6
7use super::{
8    circuit_inputs::{InputLayerNode, InputShred},
9    circuit_outputs::OutputNode,
10    fiat_shamir_challenge::FiatShamirChallengeNode,
11    gate::GateNode,
12    identity_gate::IdentityGateNode,
13    lookup::{LookupConstraint, LookupTable},
14    matmult::MatMultNode,
15    sector::Sector,
16    split_node::SplitNode,
17};
18
19node_enum!(NodeEnum: Field,
20    (InputShred: InputShred),
21    (InputLayer: InputLayerNode),
22    (FiatShamirChallengeNode: FiatShamirChallengeNode),
23    (Output: OutputNode),
24    (Sector: Sector<F>),
25    (GateNode: GateNode),
26    (IdentityGateNode: IdentityGateNode),
27    (SplitNode: SplitNode),
28    (MatMultNode: MatMultNode),
29    (LookupConstraint: LookupConstraint),
30    (LookupTable: LookupTable)
31);