graphql_query/ast/
ast_kind.rs1use std::fmt;
2
3pub enum ASTKind {
8 Definition,
10 Document,
12 OperationDefinition,
14 OperationKind,
16 FragmentDefinition,
18 VariableDefinitions,
20 VariableDefinition,
22 Type,
24 NamedType,
26 ListType,
28 NonNullType,
30 Field,
32 FragmentSpread,
34 InlineFragment,
36 SelectionSet,
38 Selection,
40 Directives,
42 Directive,
44 Arguments,
46 Argument,
48 Object,
50 ObjectField,
52 Value,
54 Variable,
56 String,
58 Float,
60 Int,
62 Boolean,
64 Enum,
66 List,
68}
69
70impl fmt::Display for ASTKind {
71 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
72 match self {
73 ASTKind::Definition => f.write_str("Definition"),
74 ASTKind::Document => f.write_str("Document"),
75 ASTKind::OperationDefinition => f.write_str("Operation Definition"),
76 ASTKind::OperationKind => f.write_str("Operation Kind"),
77 ASTKind::FragmentDefinition => f.write_str("Fragment Definition"),
78 ASTKind::VariableDefinitions => f.write_str("Variable Definitions"),
79 ASTKind::VariableDefinition => f.write_str("Variable Definition"),
80 ASTKind::Type => f.write_str("Type"),
81 ASTKind::NamedType => f.write_str("Type Name"),
82 ASTKind::ListType => f.write_str("List Type"),
83 ASTKind::NonNullType => f.write_str("Non-null Type"),
84 ASTKind::Field => f.write_str("Field"),
85 ASTKind::FragmentSpread => f.write_str("Fragment Spread"),
86 ASTKind::InlineFragment => f.write_str("Inline Fragment"),
87 ASTKind::SelectionSet => f.write_str("Selection Set"),
88 ASTKind::Selection => f.write_str("Selection"),
89 ASTKind::Directives => f.write_str("Directives"),
90 ASTKind::Directive => f.write_str("Directive"),
91 ASTKind::Arguments => f.write_str("Arguments"),
92 ASTKind::Argument => f.write_str("Argument"),
93 ASTKind::Object => f.write_str("Object"),
94 ASTKind::ObjectField => f.write_str("Object Field"),
95 ASTKind::Value => f.write_str("Value"),
96 ASTKind::Variable => f.write_str("Variable"),
97 ASTKind::String => f.write_str("String"),
98 ASTKind::Float => f.write_str("Float"),
99 ASTKind::Int => f.write_str("Integer"),
100 ASTKind::Boolean => f.write_str("Boolean"),
101 ASTKind::Enum => f.write_str("Enum"),
102 ASTKind::List => f.write_str("List"),
103 }
104 }
105}