Add an upcast expression
[hiphop-php.git] / hphp / hack / src / parser / full_fidelity_syntax_kind.ml
blob5c86a2d4d5047830c411c31be21521efca662381
1 (*
2 * Copyright (c) 2016, Facebook, Inc.
3 * All rights reserved.
5 * This source code is licensed under the MIT license found in the
6 * LICENSE file in the "hack" directory of this source tree. An additional
7 * directory.
9 **
11 * THIS FILE IS @generated; DO NOT EDIT IT
12 * To regenerate this file, run
14 * buck run //hphp/hack/src:generate_full_fidelity
20 type t =
21 | Token of Full_fidelity_token_kind.t
22 | Missing
23 | SyntaxList
24 | EndOfFile
25 | Script
26 | QualifiedName
27 | SimpleTypeSpecifier
28 | LiteralExpression
29 | PrefixedStringExpression
30 | PrefixedCodeExpression
31 | VariableExpression
32 | PipeVariableExpression
33 | FileAttributeSpecification
34 | EnumDeclaration
35 | EnumUse
36 | Enumerator
37 | EnumClassDeclaration
38 | EnumClassEnumerator
39 | RecordDeclaration
40 | RecordField
41 | AliasDeclaration
42 | ContextAliasDeclaration
43 | PropertyDeclaration
44 | PropertyDeclarator
45 | NamespaceDeclaration
46 | NamespaceDeclarationHeader
47 | NamespaceBody
48 | NamespaceEmptyBody
49 | NamespaceUseDeclaration
50 | NamespaceGroupUseDeclaration
51 | NamespaceUseClause
52 | FunctionDeclaration
53 | FunctionDeclarationHeader
54 | Contexts
55 | WhereClause
56 | WhereConstraint
57 | MethodishDeclaration
58 | MethodishTraitResolution
59 | ClassishDeclaration
60 | ClassishBody
61 | TraitUsePrecedenceItem
62 | TraitUseAliasItem
63 | TraitUseConflictResolution
64 | TraitUse
65 | RequireClause
66 | ConstDeclaration
67 | ConstantDeclarator
68 | TypeConstDeclaration
69 | ContextConstDeclaration
70 | DecoratedExpression
71 | ParameterDeclaration
72 | VariadicParameter
73 | OldAttributeSpecification
74 | AttributeSpecification
75 | Attribute
76 | InclusionExpression
77 | InclusionDirective
78 | CompoundStatement
79 | ExpressionStatement
80 | MarkupSection
81 | MarkupSuffix
82 | UnsetStatement
83 | UsingStatementBlockScoped
84 | UsingStatementFunctionScoped
85 | WhileStatement
86 | IfStatement
87 | ElseifClause
88 | ElseClause
89 | TryStatement
90 | CatchClause
91 | FinallyClause
92 | DoStatement
93 | ForStatement
94 | ForeachStatement
95 | SwitchStatement
96 | SwitchSection
97 | SwitchFallthrough
98 | CaseLabel
99 | DefaultLabel
100 | ReturnStatement
101 | YieldBreakStatement
102 | ThrowStatement
103 | BreakStatement
104 | ContinueStatement
105 | EchoStatement
106 | ConcurrentStatement
107 | SimpleInitializer
108 | AnonymousClass
109 | AnonymousFunction
110 | AnonymousFunctionUseClause
111 | LambdaExpression
112 | LambdaSignature
113 | CastExpression
114 | ScopeResolutionExpression
115 | MemberSelectionExpression
116 | SafeMemberSelectionExpression
117 | EmbeddedMemberSelectionExpression
118 | YieldExpression
119 | PrefixUnaryExpression
120 | PostfixUnaryExpression
121 | BinaryExpression
122 | IsExpression
123 | AsExpression
124 | NullableAsExpression
125 | UpcastExpression
126 | ConditionalExpression
127 | EvalExpression
128 | IssetExpression
129 | FunctionCallExpression
130 | FunctionPointerExpression
131 | ParenthesizedExpression
132 | BracedExpression
133 | ETSpliceExpression
134 | EmbeddedBracedExpression
135 | ListExpression
136 | CollectionLiteralExpression
137 | ObjectCreationExpression
138 | ConstructorCall
139 | RecordCreationExpression
140 | DarrayIntrinsicExpression
141 | DictionaryIntrinsicExpression
142 | KeysetIntrinsicExpression
143 | VarrayIntrinsicExpression
144 | VectorIntrinsicExpression
145 | ElementInitializer
146 | SubscriptExpression
147 | EmbeddedSubscriptExpression
148 | AwaitableCreationExpression
149 | XHPChildrenDeclaration
150 | XHPChildrenParenthesizedList
151 | XHPCategoryDeclaration
152 | XHPEnumType
153 | XHPLateinit
154 | XHPRequired
155 | XHPClassAttributeDeclaration
156 | XHPClassAttribute
157 | XHPSimpleClassAttribute
158 | XHPSimpleAttribute
159 | XHPSpreadAttribute
160 | XHPOpen
161 | XHPExpression
162 | XHPClose
163 | TypeConstant
164 | VectorTypeSpecifier
165 | KeysetTypeSpecifier
166 | TupleTypeExplicitSpecifier
167 | VarrayTypeSpecifier
168 | FunctionCtxTypeSpecifier
169 | TypeParameter
170 | TypeConstraint
171 | ContextConstraint
172 | DarrayTypeSpecifier
173 | DictionaryTypeSpecifier
174 | ClosureTypeSpecifier
175 | ClosureParameterTypeSpecifier
176 | ClassnameTypeSpecifier
177 | FieldSpecifier
178 | FieldInitializer
179 | ShapeTypeSpecifier
180 | ShapeExpression
181 | TupleExpression
182 | GenericTypeSpecifier
183 | NullableTypeSpecifier
184 | LikeTypeSpecifier
185 | SoftTypeSpecifier
186 | AttributizedSpecifier
187 | ReifiedTypeArgument
188 | TypeArguments
189 | TypeParameters
190 | TupleTypeSpecifier
191 | UnionTypeSpecifier
192 | IntersectionTypeSpecifier
193 | ErrorSyntax
194 | ListItem
195 | EnumClassLabelExpression
196 [@@deriving show, eq]
198 let to_string kind =
199 match kind with
200 | Token _ -> "token"
201 | Missing -> "missing"
202 | SyntaxList -> "list"
203 | EndOfFile -> "end_of_file"
204 | Script -> "script"
205 | QualifiedName -> "qualified_name"
206 | SimpleTypeSpecifier -> "simple_type_specifier"
207 | LiteralExpression -> "literal"
208 | PrefixedStringExpression -> "prefixed_string"
209 | PrefixedCodeExpression -> "prefixed_code"
210 | VariableExpression -> "variable"
211 | PipeVariableExpression -> "pipe_variable"
212 | FileAttributeSpecification -> "file_attribute_specification"
213 | EnumDeclaration -> "enum_declaration"
214 | EnumUse -> "enum_use"
215 | Enumerator -> "enumerator"
216 | EnumClassDeclaration -> "enum_class_declaration"
217 | EnumClassEnumerator -> "enum_class_enumerator"
218 | RecordDeclaration -> "record_declaration"
219 | RecordField -> "record_field"
220 | AliasDeclaration -> "alias_declaration"
221 | ContextAliasDeclaration -> "context_alias_declaration"
222 | PropertyDeclaration -> "property_declaration"
223 | PropertyDeclarator -> "property_declarator"
224 | NamespaceDeclaration -> "namespace_declaration"
225 | NamespaceDeclarationHeader -> "namespace_declaration_header"
226 | NamespaceBody -> "namespace_body"
227 | NamespaceEmptyBody -> "namespace_empty_body"
228 | NamespaceUseDeclaration -> "namespace_use_declaration"
229 | NamespaceGroupUseDeclaration -> "namespace_group_use_declaration"
230 | NamespaceUseClause -> "namespace_use_clause"
231 | FunctionDeclaration -> "function_declaration"
232 | FunctionDeclarationHeader -> "function_declaration_header"
233 | Contexts -> "contexts"
234 | WhereClause -> "where_clause"
235 | WhereConstraint -> "where_constraint"
236 | MethodishDeclaration -> "methodish_declaration"
237 | MethodishTraitResolution -> "methodish_trait_resolution"
238 | ClassishDeclaration -> "classish_declaration"
239 | ClassishBody -> "classish_body"
240 | TraitUsePrecedenceItem -> "trait_use_precedence_item"
241 | TraitUseAliasItem -> "trait_use_alias_item"
242 | TraitUseConflictResolution -> "trait_use_conflict_resolution"
243 | TraitUse -> "trait_use"
244 | RequireClause -> "require_clause"
245 | ConstDeclaration -> "const_declaration"
246 | ConstantDeclarator -> "constant_declarator"
247 | TypeConstDeclaration -> "type_const_declaration"
248 | ContextConstDeclaration -> "context_const_declaration"
249 | DecoratedExpression -> "decorated_expression"
250 | ParameterDeclaration -> "parameter_declaration"
251 | VariadicParameter -> "variadic_parameter"
252 | OldAttributeSpecification -> "old_attribute_specification"
253 | AttributeSpecification -> "attribute_specification"
254 | Attribute -> "attribute"
255 | InclusionExpression -> "inclusion_expression"
256 | InclusionDirective -> "inclusion_directive"
257 | CompoundStatement -> "compound_statement"
258 | ExpressionStatement -> "expression_statement"
259 | MarkupSection -> "markup_section"
260 | MarkupSuffix -> "markup_suffix"
261 | UnsetStatement -> "unset_statement"
262 | UsingStatementBlockScoped -> "using_statement_block_scoped"
263 | UsingStatementFunctionScoped -> "using_statement_function_scoped"
264 | WhileStatement -> "while_statement"
265 | IfStatement -> "if_statement"
266 | ElseifClause -> "elseif_clause"
267 | ElseClause -> "else_clause"
268 | TryStatement -> "try_statement"
269 | CatchClause -> "catch_clause"
270 | FinallyClause -> "finally_clause"
271 | DoStatement -> "do_statement"
272 | ForStatement -> "for_statement"
273 | ForeachStatement -> "foreach_statement"
274 | SwitchStatement -> "switch_statement"
275 | SwitchSection -> "switch_section"
276 | SwitchFallthrough -> "switch_fallthrough"
277 | CaseLabel -> "case_label"
278 | DefaultLabel -> "default_label"
279 | ReturnStatement -> "return_statement"
280 | YieldBreakStatement -> "yield_break_statement"
281 | ThrowStatement -> "throw_statement"
282 | BreakStatement -> "break_statement"
283 | ContinueStatement -> "continue_statement"
284 | EchoStatement -> "echo_statement"
285 | ConcurrentStatement -> "concurrent_statement"
286 | SimpleInitializer -> "simple_initializer"
287 | AnonymousClass -> "anonymous_class"
288 | AnonymousFunction -> "anonymous_function"
289 | AnonymousFunctionUseClause -> "anonymous_function_use_clause"
290 | LambdaExpression -> "lambda_expression"
291 | LambdaSignature -> "lambda_signature"
292 | CastExpression -> "cast_expression"
293 | ScopeResolutionExpression -> "scope_resolution_expression"
294 | MemberSelectionExpression -> "member_selection_expression"
295 | SafeMemberSelectionExpression -> "safe_member_selection_expression"
296 | EmbeddedMemberSelectionExpression -> "embedded_member_selection_expression"
297 | YieldExpression -> "yield_expression"
298 | PrefixUnaryExpression -> "prefix_unary_expression"
299 | PostfixUnaryExpression -> "postfix_unary_expression"
300 | BinaryExpression -> "binary_expression"
301 | IsExpression -> "is_expression"
302 | AsExpression -> "as_expression"
303 | NullableAsExpression -> "nullable_as_expression"
304 | UpcastExpression -> "upcast_expression"
305 | ConditionalExpression -> "conditional_expression"
306 | EvalExpression -> "eval_expression"
307 | IssetExpression -> "isset_expression"
308 | FunctionCallExpression -> "function_call_expression"
309 | FunctionPointerExpression -> "function_pointer_expression"
310 | ParenthesizedExpression -> "parenthesized_expression"
311 | BracedExpression -> "braced_expression"
312 | ETSpliceExpression -> "et_splice_expression"
313 | EmbeddedBracedExpression -> "embedded_braced_expression"
314 | ListExpression -> "list_expression"
315 | CollectionLiteralExpression -> "collection_literal_expression"
316 | ObjectCreationExpression -> "object_creation_expression"
317 | ConstructorCall -> "constructor_call"
318 | RecordCreationExpression -> "record_creation_expression"
319 | DarrayIntrinsicExpression -> "darray_intrinsic_expression"
320 | DictionaryIntrinsicExpression -> "dictionary_intrinsic_expression"
321 | KeysetIntrinsicExpression -> "keyset_intrinsic_expression"
322 | VarrayIntrinsicExpression -> "varray_intrinsic_expression"
323 | VectorIntrinsicExpression -> "vector_intrinsic_expression"
324 | ElementInitializer -> "element_initializer"
325 | SubscriptExpression -> "subscript_expression"
326 | EmbeddedSubscriptExpression -> "embedded_subscript_expression"
327 | AwaitableCreationExpression -> "awaitable_creation_expression"
328 | XHPChildrenDeclaration -> "xhp_children_declaration"
329 | XHPChildrenParenthesizedList -> "xhp_children_parenthesized_list"
330 | XHPCategoryDeclaration -> "xhp_category_declaration"
331 | XHPEnumType -> "xhp_enum_type"
332 | XHPLateinit -> "xhp_lateinit"
333 | XHPRequired -> "xhp_required"
334 | XHPClassAttributeDeclaration -> "xhp_class_attribute_declaration"
335 | XHPClassAttribute -> "xhp_class_attribute"
336 | XHPSimpleClassAttribute -> "xhp_simple_class_attribute"
337 | XHPSimpleAttribute -> "xhp_simple_attribute"
338 | XHPSpreadAttribute -> "xhp_spread_attribute"
339 | XHPOpen -> "xhp_open"
340 | XHPExpression -> "xhp_expression"
341 | XHPClose -> "xhp_close"
342 | TypeConstant -> "type_constant"
343 | VectorTypeSpecifier -> "vector_type_specifier"
344 | KeysetTypeSpecifier -> "keyset_type_specifier"
345 | TupleTypeExplicitSpecifier -> "tuple_type_explicit_specifier"
346 | VarrayTypeSpecifier -> "varray_type_specifier"
347 | FunctionCtxTypeSpecifier -> "function_ctx_type_specifier"
348 | TypeParameter -> "type_parameter"
349 | TypeConstraint -> "type_constraint"
350 | ContextConstraint -> "context_constraint"
351 | DarrayTypeSpecifier -> "darray_type_specifier"
352 | DictionaryTypeSpecifier -> "dictionary_type_specifier"
353 | ClosureTypeSpecifier -> "closure_type_specifier"
354 | ClosureParameterTypeSpecifier -> "closure_parameter_type_specifier"
355 | ClassnameTypeSpecifier -> "classname_type_specifier"
356 | FieldSpecifier -> "field_specifier"
357 | FieldInitializer -> "field_initializer"
358 | ShapeTypeSpecifier -> "shape_type_specifier"
359 | ShapeExpression -> "shape_expression"
360 | TupleExpression -> "tuple_expression"
361 | GenericTypeSpecifier -> "generic_type_specifier"
362 | NullableTypeSpecifier -> "nullable_type_specifier"
363 | LikeTypeSpecifier -> "like_type_specifier"
364 | SoftTypeSpecifier -> "soft_type_specifier"
365 | AttributizedSpecifier -> "attributized_specifier"
366 | ReifiedTypeArgument -> "reified_type_argument"
367 | TypeArguments -> "type_arguments"
368 | TypeParameters -> "type_parameters"
369 | TupleTypeSpecifier -> "tuple_type_specifier"
370 | UnionTypeSpecifier -> "union_type_specifier"
371 | IntersectionTypeSpecifier -> "intersection_type_specifier"
372 | ErrorSyntax -> "error"
373 | ListItem -> "list_item"
374 | EnumClassLabelExpression -> "enum_class_label"