codama_nodes/discriminator_nodes/
discriminator_node.rs

1use crate::{ConstantDiscriminatorNode, FieldDiscriminatorNode, SizeDiscriminatorNode};
2use codama_nodes_derive::node_union;
3
4#[node_union]
5pub enum DiscriminatorNode {
6    Constant(ConstantDiscriminatorNode),
7    Field(FieldDiscriminatorNode),
8    Size(SizeDiscriminatorNode),
9}
10
11#[cfg(test)]
12mod tests {
13    use super::*;
14    use crate::HasKind;
15
16    #[test]
17    fn kind() {
18        let node: DiscriminatorNode = SizeDiscriminatorNode::new(42).into();
19        assert_eq!(node.kind(), "sizeDiscriminatorNode");
20    }
21}