json_utils/schema/
schema_node_from.rs1use super::*;
2
3macro_rules! valid_node_from {
4 ($e: ident) => {
5 enum_variant_from!(ValidNode, $e, $e);
6 };
7}
8
9macro_rules! schema_node_via_valid_node_from {
10 ($e: ident) => {
11 impl From<$e> for SchemaNode {
12 fn from(inner: $e) -> Self {
13 SchemaNode::ValidNode(inner.into())
14 }
15 }
16 };
17}
18
19impl From<ValidNode> for SchemaNode {
20 fn from(inner: ValidNode) -> Self {
21 SchemaNode::ValidNode(inner)
22 }
23}
24
25valid_node_from!(AnyNode);
26valid_node_from!(NullNode);
27valid_node_from!(BooleanNode);
28valid_node_from!(StringNode);
29valid_node_from!(IntegerNode);
30valid_node_from!(NumberNode);
31valid_node_from!(ArrayNode);
32valid_node_from!(ObjectNode);
33
34schema_node_via_valid_node_from!(AnyNode);
35schema_node_via_valid_node_from!(NullNode);
36schema_node_via_valid_node_from!(BooleanNode);
37schema_node_via_valid_node_from!(StringNode);
38schema_node_via_valid_node_from!(IntegerNode);
39schema_node_via_valid_node_from!(NumberNode);
40schema_node_via_valid_node_from!(ArrayNode);
41schema_node_via_valid_node_from!(ObjectNode);