2 * Copyright (c) 2016, Facebook, Inc.
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
11 * THIS FILE IS @generated; DO NOT EDIT IT
12 * To regenerate this file, run
14 * buck run //hphp/hack/src:generate_full_fidelity
19 use crate::{OcamlSyntax, Context};
22 use parser_core_types::syntax_kind::SyntaxKind;
23 use parser_core_types::syntax::{SyntaxType, SyntaxValueType};
24 use parser_core_types::positioned_token::PositionedToken;
26 impl<V, C> SyntaxType<C> for OcamlSyntax<V>
29 V: SyntaxValueType<PositionedToken> + ToOcaml,
31 fn make_end_of_file(ctx: &C, arg0: Self) -> Self {
35 let value = V::from_values(children.iter());
36 let syntax = Self::make(
38 SyntaxKind::EndOfFile,
44 Self { syntax, value }
47 fn make_script(ctx: &C, arg0: Self) -> Self {
51 let value = V::from_values(children.iter());
52 let syntax = Self::make(
60 Self { syntax, value }
63 fn make_qualified_name(ctx: &C, arg0: Self) -> Self {
67 let value = V::from_values(children.iter());
68 let syntax = Self::make(
70 SyntaxKind::QualifiedName,
76 Self { syntax, value }
79 fn make_simple_type_specifier(ctx: &C, arg0: Self) -> Self {
83 let value = V::from_values(children.iter());
84 let syntax = Self::make(
86 SyntaxKind::SimpleTypeSpecifier,
92 Self { syntax, value }
95 fn make_literal_expression(ctx: &C, arg0: Self) -> Self {
99 let value = V::from_values(children.iter());
100 let syntax = Self::make(
102 SyntaxKind::LiteralExpression,
108 Self { syntax, value }
111 fn make_prefixed_string_expression(ctx: &C, arg0: Self, arg1: Self) -> Self {
116 let value = V::from_values(children.iter());
117 let syntax = Self::make(
119 SyntaxKind::PrefixedStringExpression,
126 Self { syntax, value }
129 fn make_prefixed_code_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
136 let value = V::from_values(children.iter());
137 let syntax = Self::make(
139 SyntaxKind::PrefixedCodeExpression,
148 Self { syntax, value }
151 fn make_variable_expression(ctx: &C, arg0: Self) -> Self {
155 let value = V::from_values(children.iter());
156 let syntax = Self::make(
158 SyntaxKind::VariableExpression,
164 Self { syntax, value }
167 fn make_pipe_variable_expression(ctx: &C, arg0: Self) -> Self {
171 let value = V::from_values(children.iter());
172 let syntax = Self::make(
174 SyntaxKind::PipeVariableExpression,
180 Self { syntax, value }
183 fn make_file_attribute_specification(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
191 let value = V::from_values(children.iter());
192 let syntax = Self::make(
194 SyntaxKind::FileAttributeSpecification,
204 Self { syntax, value }
207 fn make_enum_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self, arg7: Self, arg8: Self, arg9: Self, arg10: Self) -> Self {
221 let value = V::from_values(children.iter());
222 let syntax = Self::make(
224 SyntaxKind::EnumDeclaration,
240 Self { syntax, value }
243 fn make_enumerator(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
250 let value = V::from_values(children.iter());
251 let syntax = Self::make(
253 SyntaxKind::Enumerator,
262 Self { syntax, value }
265 fn make_enum_class_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self, arg7: Self, arg8: Self, arg9: Self, arg10: Self) -> Self {
279 let value = V::from_values(children.iter());
280 let syntax = Self::make(
282 SyntaxKind::EnumClassDeclaration,
298 Self { syntax, value }
301 fn make_enum_class_enumerator(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self, arg7: Self) -> Self {
312 let value = V::from_values(children.iter());
313 let syntax = Self::make(
315 SyntaxKind::EnumClassEnumerator,
328 Self { syntax, value }
331 fn make_record_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self, arg7: Self, arg8: Self) -> Self {
343 let value = V::from_values(children.iter());
344 let syntax = Self::make(
346 SyntaxKind::RecordDeclaration,
360 Self { syntax, value }
363 fn make_record_field(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
370 let value = V::from_values(children.iter());
371 let syntax = Self::make(
373 SyntaxKind::RecordField,
382 Self { syntax, value }
385 fn make_alias_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self, arg7: Self) -> Self {
396 let value = V::from_values(children.iter());
397 let syntax = Self::make(
399 SyntaxKind::AliasDeclaration,
412 Self { syntax, value }
415 fn make_property_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
423 let value = V::from_values(children.iter());
424 let syntax = Self::make(
426 SyntaxKind::PropertyDeclaration,
436 Self { syntax, value }
439 fn make_property_declarator(ctx: &C, arg0: Self, arg1: Self) -> Self {
444 let value = V::from_values(children.iter());
445 let syntax = Self::make(
447 SyntaxKind::PropertyDeclarator,
454 Self { syntax, value }
457 fn make_namespace_declaration(ctx: &C, arg0: Self, arg1: Self) -> Self {
462 let value = V::from_values(children.iter());
463 let syntax = Self::make(
465 SyntaxKind::NamespaceDeclaration,
472 Self { syntax, value }
475 fn make_namespace_declaration_header(ctx: &C, arg0: Self, arg1: Self) -> Self {
480 let value = V::from_values(children.iter());
481 let syntax = Self::make(
483 SyntaxKind::NamespaceDeclarationHeader,
490 Self { syntax, value }
493 fn make_namespace_body(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
499 let value = V::from_values(children.iter());
500 let syntax = Self::make(
502 SyntaxKind::NamespaceBody,
510 Self { syntax, value }
513 fn make_namespace_empty_body(ctx: &C, arg0: Self) -> Self {
517 let value = V::from_values(children.iter());
518 let syntax = Self::make(
520 SyntaxKind::NamespaceEmptyBody,
526 Self { syntax, value }
529 fn make_namespace_use_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
536 let value = V::from_values(children.iter());
537 let syntax = Self::make(
539 SyntaxKind::NamespaceUseDeclaration,
548 Self { syntax, value }
551 fn make_namespace_group_use_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self) -> Self {
561 let value = V::from_values(children.iter());
562 let syntax = Self::make(
564 SyntaxKind::NamespaceGroupUseDeclaration,
576 Self { syntax, value }
579 fn make_namespace_use_clause(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
586 let value = V::from_values(children.iter());
587 let syntax = Self::make(
589 SyntaxKind::NamespaceUseClause,
598 Self { syntax, value }
601 fn make_function_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
607 let value = V::from_values(children.iter());
608 let syntax = Self::make(
610 SyntaxKind::FunctionDeclaration,
618 Self { syntax, value }
621 fn make_function_declaration_header(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self, arg7: Self, arg8: Self, arg9: Self, arg10: Self) -> Self {
635 let value = V::from_values(children.iter());
636 let syntax = Self::make(
638 SyntaxKind::FunctionDeclarationHeader,
654 Self { syntax, value }
657 fn make_capability(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
663 let value = V::from_values(children.iter());
664 let syntax = Self::make(
666 SyntaxKind::Capability,
674 Self { syntax, value }
677 fn make_where_clause(ctx: &C, arg0: Self, arg1: Self) -> Self {
682 let value = V::from_values(children.iter());
683 let syntax = Self::make(
685 SyntaxKind::WhereClause,
692 Self { syntax, value }
695 fn make_where_constraint(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
701 let value = V::from_values(children.iter());
702 let syntax = Self::make(
704 SyntaxKind::WhereConstraint,
712 Self { syntax, value }
715 fn make_methodish_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
722 let value = V::from_values(children.iter());
723 let syntax = Self::make(
725 SyntaxKind::MethodishDeclaration,
734 Self { syntax, value }
737 fn make_methodish_trait_resolution(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
745 let value = V::from_values(children.iter());
746 let syntax = Self::make(
748 SyntaxKind::MethodishTraitResolution,
758 Self { syntax, value }
761 fn make_classish_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self, arg7: Self, arg8: Self, arg9: Self, arg10: Self, arg11: Self) -> Self {
776 let value = V::from_values(children.iter());
777 let syntax = Self::make(
779 SyntaxKind::ClassishDeclaration,
796 Self { syntax, value }
799 fn make_classish_body(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
805 let value = V::from_values(children.iter());
806 let syntax = Self::make(
808 SyntaxKind::ClassishBody,
816 Self { syntax, value }
819 fn make_trait_use_precedence_item(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
825 let value = V::from_values(children.iter());
826 let syntax = Self::make(
828 SyntaxKind::TraitUsePrecedenceItem,
836 Self { syntax, value }
839 fn make_trait_use_alias_item(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
846 let value = V::from_values(children.iter());
847 let syntax = Self::make(
849 SyntaxKind::TraitUseAliasItem,
858 Self { syntax, value }
861 fn make_trait_use_conflict_resolution(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
869 let value = V::from_values(children.iter());
870 let syntax = Self::make(
872 SyntaxKind::TraitUseConflictResolution,
882 Self { syntax, value }
885 fn make_trait_use(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
891 let value = V::from_values(children.iter());
892 let syntax = Self::make(
894 SyntaxKind::TraitUse,
902 Self { syntax, value }
905 fn make_require_clause(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
912 let value = V::from_values(children.iter());
913 let syntax = Self::make(
915 SyntaxKind::RequireClause,
924 Self { syntax, value }
927 fn make_const_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
935 let value = V::from_values(children.iter());
936 let syntax = Self::make(
938 SyntaxKind::ConstDeclaration,
948 Self { syntax, value }
951 fn make_constant_declarator(ctx: &C, arg0: Self, arg1: Self) -> Self {
956 let value = V::from_values(children.iter());
957 let syntax = Self::make(
959 SyntaxKind::ConstantDeclarator,
966 Self { syntax, value }
969 fn make_type_const_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self, arg7: Self, arg8: Self, arg9: Self) -> Self {
982 let value = V::from_values(children.iter());
983 let syntax = Self::make(
985 SyntaxKind::TypeConstDeclaration,
1000 Self { syntax, value }
1003 fn make_decorated_expression(ctx: &C, arg0: Self, arg1: Self) -> Self {
1008 let value = V::from_values(children.iter());
1009 let syntax = Self::make(
1011 SyntaxKind::DecoratedExpression,
1018 Self { syntax, value }
1021 fn make_parameter_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self) -> Self {
1030 let value = V::from_values(children.iter());
1031 let syntax = Self::make(
1033 SyntaxKind::ParameterDeclaration,
1044 Self { syntax, value }
1047 fn make_variadic_parameter(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
1053 let value = V::from_values(children.iter());
1054 let syntax = Self::make(
1056 SyntaxKind::VariadicParameter,
1064 Self { syntax, value }
1067 fn make_old_attribute_specification(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
1073 let value = V::from_values(children.iter());
1074 let syntax = Self::make(
1076 SyntaxKind::OldAttributeSpecification,
1084 Self { syntax, value }
1087 fn make_attribute_specification(ctx: &C, arg0: Self) -> Self {
1091 let value = V::from_values(children.iter());
1092 let syntax = Self::make(
1094 SyntaxKind::AttributeSpecification,
1100 Self { syntax, value }
1103 fn make_attribute(ctx: &C, arg0: Self, arg1: Self) -> Self {
1108 let value = V::from_values(children.iter());
1109 let syntax = Self::make(
1111 SyntaxKind::Attribute,
1118 Self { syntax, value }
1121 fn make_inclusion_expression(ctx: &C, arg0: Self, arg1: Self) -> Self {
1126 let value = V::from_values(children.iter());
1127 let syntax = Self::make(
1129 SyntaxKind::InclusionExpression,
1136 Self { syntax, value }
1139 fn make_inclusion_directive(ctx: &C, arg0: Self, arg1: Self) -> Self {
1144 let value = V::from_values(children.iter());
1145 let syntax = Self::make(
1147 SyntaxKind::InclusionDirective,
1154 Self { syntax, value }
1157 fn make_compound_statement(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
1163 let value = V::from_values(children.iter());
1164 let syntax = Self::make(
1166 SyntaxKind::CompoundStatement,
1174 Self { syntax, value }
1177 fn make_expression_statement(ctx: &C, arg0: Self, arg1: Self) -> Self {
1182 let value = V::from_values(children.iter());
1183 let syntax = Self::make(
1185 SyntaxKind::ExpressionStatement,
1192 Self { syntax, value }
1195 fn make_markup_section(ctx: &C, arg0: Self, arg1: Self) -> Self {
1200 let value = V::from_values(children.iter());
1201 let syntax = Self::make(
1203 SyntaxKind::MarkupSection,
1210 Self { syntax, value }
1213 fn make_markup_suffix(ctx: &C, arg0: Self, arg1: Self) -> Self {
1218 let value = V::from_values(children.iter());
1219 let syntax = Self::make(
1221 SyntaxKind::MarkupSuffix,
1228 Self { syntax, value }
1231 fn make_unset_statement(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
1239 let value = V::from_values(children.iter());
1240 let syntax = Self::make(
1242 SyntaxKind::UnsetStatement,
1252 Self { syntax, value }
1255 fn make_using_statement_block_scoped(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self) -> Self {
1264 let value = V::from_values(children.iter());
1265 let syntax = Self::make(
1267 SyntaxKind::UsingStatementBlockScoped,
1278 Self { syntax, value }
1281 fn make_using_statement_function_scoped(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
1288 let value = V::from_values(children.iter());
1289 let syntax = Self::make(
1291 SyntaxKind::UsingStatementFunctionScoped,
1300 Self { syntax, value }
1303 fn make_while_statement(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
1311 let value = V::from_values(children.iter());
1312 let syntax = Self::make(
1314 SyntaxKind::WhileStatement,
1324 Self { syntax, value }
1327 fn make_if_statement(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self) -> Self {
1337 let value = V::from_values(children.iter());
1338 let syntax = Self::make(
1340 SyntaxKind::IfStatement,
1352 Self { syntax, value }
1355 fn make_elseif_clause(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
1363 let value = V::from_values(children.iter());
1364 let syntax = Self::make(
1366 SyntaxKind::ElseifClause,
1376 Self { syntax, value }
1379 fn make_else_clause(ctx: &C, arg0: Self, arg1: Self) -> Self {
1384 let value = V::from_values(children.iter());
1385 let syntax = Self::make(
1387 SyntaxKind::ElseClause,
1394 Self { syntax, value }
1397 fn make_try_statement(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
1404 let value = V::from_values(children.iter());
1405 let syntax = Self::make(
1407 SyntaxKind::TryStatement,
1416 Self { syntax, value }
1419 fn make_catch_clause(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self) -> Self {
1428 let value = V::from_values(children.iter());
1429 let syntax = Self::make(
1431 SyntaxKind::CatchClause,
1442 Self { syntax, value }
1445 fn make_finally_clause(ctx: &C, arg0: Self, arg1: Self) -> Self {
1450 let value = V::from_values(children.iter());
1451 let syntax = Self::make(
1453 SyntaxKind::FinallyClause,
1460 Self { syntax, value }
1463 fn make_do_statement(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self) -> Self {
1473 let value = V::from_values(children.iter());
1474 let syntax = Self::make(
1476 SyntaxKind::DoStatement,
1488 Self { syntax, value }
1491 fn make_for_statement(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self, arg7: Self, arg8: Self) -> Self {
1503 let value = V::from_values(children.iter());
1504 let syntax = Self::make(
1506 SyntaxKind::ForStatement,
1520 Self { syntax, value }
1523 fn make_foreach_statement(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self, arg7: Self, arg8: Self, arg9: Self) -> Self {
1536 let value = V::from_values(children.iter());
1537 let syntax = Self::make(
1539 SyntaxKind::ForeachStatement,
1554 Self { syntax, value }
1557 fn make_switch_statement(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self) -> Self {
1567 let value = V::from_values(children.iter());
1568 let syntax = Self::make(
1570 SyntaxKind::SwitchStatement,
1582 Self { syntax, value }
1585 fn make_switch_section(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
1591 let value = V::from_values(children.iter());
1592 let syntax = Self::make(
1594 SyntaxKind::SwitchSection,
1602 Self { syntax, value }
1605 fn make_switch_fallthrough(ctx: &C, arg0: Self, arg1: Self) -> Self {
1610 let value = V::from_values(children.iter());
1611 let syntax = Self::make(
1613 SyntaxKind::SwitchFallthrough,
1620 Self { syntax, value }
1623 fn make_case_label(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
1629 let value = V::from_values(children.iter());
1630 let syntax = Self::make(
1632 SyntaxKind::CaseLabel,
1640 Self { syntax, value }
1643 fn make_default_label(ctx: &C, arg0: Self, arg1: Self) -> Self {
1648 let value = V::from_values(children.iter());
1649 let syntax = Self::make(
1651 SyntaxKind::DefaultLabel,
1658 Self { syntax, value }
1661 fn make_return_statement(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
1667 let value = V::from_values(children.iter());
1668 let syntax = Self::make(
1670 SyntaxKind::ReturnStatement,
1678 Self { syntax, value }
1681 fn make_throw_statement(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
1687 let value = V::from_values(children.iter());
1688 let syntax = Self::make(
1690 SyntaxKind::ThrowStatement,
1698 Self { syntax, value }
1701 fn make_break_statement(ctx: &C, arg0: Self, arg1: Self) -> Self {
1706 let value = V::from_values(children.iter());
1707 let syntax = Self::make(
1709 SyntaxKind::BreakStatement,
1716 Self { syntax, value }
1719 fn make_continue_statement(ctx: &C, arg0: Self, arg1: Self) -> Self {
1724 let value = V::from_values(children.iter());
1725 let syntax = Self::make(
1727 SyntaxKind::ContinueStatement,
1734 Self { syntax, value }
1737 fn make_echo_statement(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
1743 let value = V::from_values(children.iter());
1744 let syntax = Self::make(
1746 SyntaxKind::EchoStatement,
1754 Self { syntax, value }
1757 fn make_concurrent_statement(ctx: &C, arg0: Self, arg1: Self) -> Self {
1762 let value = V::from_values(children.iter());
1763 let syntax = Self::make(
1765 SyntaxKind::ConcurrentStatement,
1772 Self { syntax, value }
1775 fn make_simple_initializer(ctx: &C, arg0: Self, arg1: Self) -> Self {
1780 let value = V::from_values(children.iter());
1781 let syntax = Self::make(
1783 SyntaxKind::SimpleInitializer,
1790 Self { syntax, value }
1793 fn make_anonymous_class(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self, arg7: Self, arg8: Self) -> Self {
1805 let value = V::from_values(children.iter());
1806 let syntax = Self::make(
1808 SyntaxKind::AnonymousClass,
1822 Self { syntax, value }
1825 fn make_anonymous_function(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self, arg7: Self, arg8: Self, arg9: Self, arg10: Self) -> Self {
1839 let value = V::from_values(children.iter());
1840 let syntax = Self::make(
1842 SyntaxKind::AnonymousFunction,
1858 Self { syntax, value }
1861 fn make_anonymous_function_use_clause(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
1868 let value = V::from_values(children.iter());
1869 let syntax = Self::make(
1871 SyntaxKind::AnonymousFunctionUseClause,
1880 Self { syntax, value }
1883 fn make_lambda_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
1891 let value = V::from_values(children.iter());
1892 let syntax = Self::make(
1894 SyntaxKind::LambdaExpression,
1904 Self { syntax, value }
1907 fn make_lambda_signature(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self) -> Self {
1916 let value = V::from_values(children.iter());
1917 let syntax = Self::make(
1919 SyntaxKind::LambdaSignature,
1930 Self { syntax, value }
1933 fn make_cast_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
1940 let value = V::from_values(children.iter());
1941 let syntax = Self::make(
1943 SyntaxKind::CastExpression,
1952 Self { syntax, value }
1955 fn make_scope_resolution_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
1961 let value = V::from_values(children.iter());
1962 let syntax = Self::make(
1964 SyntaxKind::ScopeResolutionExpression,
1972 Self { syntax, value }
1975 fn make_member_selection_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
1981 let value = V::from_values(children.iter());
1982 let syntax = Self::make(
1984 SyntaxKind::MemberSelectionExpression,
1992 Self { syntax, value }
1995 fn make_safe_member_selection_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2001 let value = V::from_values(children.iter());
2002 let syntax = Self::make(
2004 SyntaxKind::SafeMemberSelectionExpression,
2012 Self { syntax, value }
2015 fn make_embedded_member_selection_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2021 let value = V::from_values(children.iter());
2022 let syntax = Self::make(
2024 SyntaxKind::EmbeddedMemberSelectionExpression,
2032 Self { syntax, value }
2035 fn make_yield_expression(ctx: &C, arg0: Self, arg1: Self) -> Self {
2040 let value = V::from_values(children.iter());
2041 let syntax = Self::make(
2043 SyntaxKind::YieldExpression,
2050 Self { syntax, value }
2053 fn make_prefix_unary_expression(ctx: &C, arg0: Self, arg1: Self) -> Self {
2058 let value = V::from_values(children.iter());
2059 let syntax = Self::make(
2061 SyntaxKind::PrefixUnaryExpression,
2068 Self { syntax, value }
2071 fn make_postfix_unary_expression(ctx: &C, arg0: Self, arg1: Self) -> Self {
2076 let value = V::from_values(children.iter());
2077 let syntax = Self::make(
2079 SyntaxKind::PostfixUnaryExpression,
2086 Self { syntax, value }
2089 fn make_binary_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2095 let value = V::from_values(children.iter());
2096 let syntax = Self::make(
2098 SyntaxKind::BinaryExpression,
2106 Self { syntax, value }
2109 fn make_is_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2115 let value = V::from_values(children.iter());
2116 let syntax = Self::make(
2118 SyntaxKind::IsExpression,
2126 Self { syntax, value }
2129 fn make_as_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2135 let value = V::from_values(children.iter());
2136 let syntax = Self::make(
2138 SyntaxKind::AsExpression,
2146 Self { syntax, value }
2149 fn make_nullable_as_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2155 let value = V::from_values(children.iter());
2156 let syntax = Self::make(
2158 SyntaxKind::NullableAsExpression,
2166 Self { syntax, value }
2169 fn make_conditional_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
2177 let value = V::from_values(children.iter());
2178 let syntax = Self::make(
2180 SyntaxKind::ConditionalExpression,
2190 Self { syntax, value }
2193 fn make_eval_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
2200 let value = V::from_values(children.iter());
2201 let syntax = Self::make(
2203 SyntaxKind::EvalExpression,
2212 Self { syntax, value }
2215 fn make_define_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
2222 let value = V::from_values(children.iter());
2223 let syntax = Self::make(
2225 SyntaxKind::DefineExpression,
2234 Self { syntax, value }
2237 fn make_isset_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
2244 let value = V::from_values(children.iter());
2245 let syntax = Self::make(
2247 SyntaxKind::IssetExpression,
2256 Self { syntax, value }
2259 fn make_function_call_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
2267 let value = V::from_values(children.iter());
2268 let syntax = Self::make(
2270 SyntaxKind::FunctionCallExpression,
2280 Self { syntax, value }
2283 fn make_function_pointer_expression(ctx: &C, arg0: Self, arg1: Self) -> Self {
2288 let value = V::from_values(children.iter());
2289 let syntax = Self::make(
2291 SyntaxKind::FunctionPointerExpression,
2298 Self { syntax, value }
2301 fn make_parenthesized_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2307 let value = V::from_values(children.iter());
2308 let syntax = Self::make(
2310 SyntaxKind::ParenthesizedExpression,
2318 Self { syntax, value }
2321 fn make_braced_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2327 let value = V::from_values(children.iter());
2328 let syntax = Self::make(
2330 SyntaxKind::BracedExpression,
2338 Self { syntax, value }
2341 fn make_embedded_braced_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2347 let value = V::from_values(children.iter());
2348 let syntax = Self::make(
2350 SyntaxKind::EmbeddedBracedExpression,
2358 Self { syntax, value }
2361 fn make_list_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
2368 let value = V::from_values(children.iter());
2369 let syntax = Self::make(
2371 SyntaxKind::ListExpression,
2380 Self { syntax, value }
2383 fn make_collection_literal_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
2390 let value = V::from_values(children.iter());
2391 let syntax = Self::make(
2393 SyntaxKind::CollectionLiteralExpression,
2402 Self { syntax, value }
2405 fn make_object_creation_expression(ctx: &C, arg0: Self, arg1: Self) -> Self {
2410 let value = V::from_values(children.iter());
2411 let syntax = Self::make(
2413 SyntaxKind::ObjectCreationExpression,
2420 Self { syntax, value }
2423 fn make_constructor_call(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
2430 let value = V::from_values(children.iter());
2431 let syntax = Self::make(
2433 SyntaxKind::ConstructorCall,
2442 Self { syntax, value }
2445 fn make_record_creation_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
2452 let value = V::from_values(children.iter());
2453 let syntax = Self::make(
2455 SyntaxKind::RecordCreationExpression,
2464 Self { syntax, value }
2467 fn make_darray_intrinsic_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
2475 let value = V::from_values(children.iter());
2476 let syntax = Self::make(
2478 SyntaxKind::DarrayIntrinsicExpression,
2488 Self { syntax, value }
2491 fn make_dictionary_intrinsic_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
2499 let value = V::from_values(children.iter());
2500 let syntax = Self::make(
2502 SyntaxKind::DictionaryIntrinsicExpression,
2512 Self { syntax, value }
2515 fn make_keyset_intrinsic_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
2523 let value = V::from_values(children.iter());
2524 let syntax = Self::make(
2526 SyntaxKind::KeysetIntrinsicExpression,
2536 Self { syntax, value }
2539 fn make_varray_intrinsic_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
2547 let value = V::from_values(children.iter());
2548 let syntax = Self::make(
2550 SyntaxKind::VarrayIntrinsicExpression,
2560 Self { syntax, value }
2563 fn make_vector_intrinsic_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
2571 let value = V::from_values(children.iter());
2572 let syntax = Self::make(
2574 SyntaxKind::VectorIntrinsicExpression,
2584 Self { syntax, value }
2587 fn make_element_initializer(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2593 let value = V::from_values(children.iter());
2594 let syntax = Self::make(
2596 SyntaxKind::ElementInitializer,
2604 Self { syntax, value }
2607 fn make_subscript_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
2614 let value = V::from_values(children.iter());
2615 let syntax = Self::make(
2617 SyntaxKind::SubscriptExpression,
2626 Self { syntax, value }
2629 fn make_embedded_subscript_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
2636 let value = V::from_values(children.iter());
2637 let syntax = Self::make(
2639 SyntaxKind::EmbeddedSubscriptExpression,
2648 Self { syntax, value }
2651 fn make_awaitable_creation_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2657 let value = V::from_values(children.iter());
2658 let syntax = Self::make(
2660 SyntaxKind::AwaitableCreationExpression,
2668 Self { syntax, value }
2671 fn make_xhp_children_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2677 let value = V::from_values(children.iter());
2678 let syntax = Self::make(
2680 SyntaxKind::XHPChildrenDeclaration,
2688 Self { syntax, value }
2691 fn make_xhp_children_parenthesized_list(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2697 let value = V::from_values(children.iter());
2698 let syntax = Self::make(
2700 SyntaxKind::XHPChildrenParenthesizedList,
2708 Self { syntax, value }
2711 fn make_xhp_category_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2717 let value = V::from_values(children.iter());
2718 let syntax = Self::make(
2720 SyntaxKind::XHPCategoryDeclaration,
2728 Self { syntax, value }
2731 fn make_xhp_enum_type(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
2738 let value = V::from_values(children.iter());
2739 let syntax = Self::make(
2741 SyntaxKind::XHPEnumType,
2750 Self { syntax, value }
2753 fn make_xhp_lateinit(ctx: &C, arg0: Self, arg1: Self) -> Self {
2758 let value = V::from_values(children.iter());
2759 let syntax = Self::make(
2761 SyntaxKind::XHPLateinit,
2768 Self { syntax, value }
2771 fn make_xhp_required(ctx: &C, arg0: Self, arg1: Self) -> Self {
2776 let value = V::from_values(children.iter());
2777 let syntax = Self::make(
2779 SyntaxKind::XHPRequired,
2786 Self { syntax, value }
2789 fn make_xhp_class_attribute_declaration(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2795 let value = V::from_values(children.iter());
2796 let syntax = Self::make(
2798 SyntaxKind::XHPClassAttributeDeclaration,
2806 Self { syntax, value }
2809 fn make_xhp_class_attribute(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
2816 let value = V::from_values(children.iter());
2817 let syntax = Self::make(
2819 SyntaxKind::XHPClassAttribute,
2828 Self { syntax, value }
2831 fn make_xhp_simple_class_attribute(ctx: &C, arg0: Self) -> Self {
2835 let value = V::from_values(children.iter());
2836 let syntax = Self::make(
2838 SyntaxKind::XHPSimpleClassAttribute,
2844 Self { syntax, value }
2847 fn make_xhp_simple_attribute(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2853 let value = V::from_values(children.iter());
2854 let syntax = Self::make(
2856 SyntaxKind::XHPSimpleAttribute,
2864 Self { syntax, value }
2867 fn make_xhp_spread_attribute(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
2874 let value = V::from_values(children.iter());
2875 let syntax = Self::make(
2877 SyntaxKind::XHPSpreadAttribute,
2886 Self { syntax, value }
2889 fn make_xhp_open(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
2896 let value = V::from_values(children.iter());
2897 let syntax = Self::make(
2899 SyntaxKind::XHPOpen,
2908 Self { syntax, value }
2911 fn make_xhp_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2917 let value = V::from_values(children.iter());
2918 let syntax = Self::make(
2920 SyntaxKind::XHPExpression,
2928 Self { syntax, value }
2931 fn make_xhp_close(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2937 let value = V::from_values(children.iter());
2938 let syntax = Self::make(
2940 SyntaxKind::XHPClose,
2948 Self { syntax, value }
2951 fn make_type_constant(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
2957 let value = V::from_values(children.iter());
2958 let syntax = Self::make(
2960 SyntaxKind::TypeConstant,
2968 Self { syntax, value }
2971 fn make_vector_type_specifier(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
2979 let value = V::from_values(children.iter());
2980 let syntax = Self::make(
2982 SyntaxKind::VectorTypeSpecifier,
2992 Self { syntax, value }
2995 fn make_keyset_type_specifier(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
3003 let value = V::from_values(children.iter());
3004 let syntax = Self::make(
3006 SyntaxKind::KeysetTypeSpecifier,
3016 Self { syntax, value }
3019 fn make_tuple_type_explicit_specifier(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
3026 let value = V::from_values(children.iter());
3027 let syntax = Self::make(
3029 SyntaxKind::TupleTypeExplicitSpecifier,
3038 Self { syntax, value }
3041 fn make_varray_type_specifier(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
3049 let value = V::from_values(children.iter());
3050 let syntax = Self::make(
3052 SyntaxKind::VarrayTypeSpecifier,
3062 Self { syntax, value }
3065 fn make_type_parameter(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self) -> Self {
3074 let value = V::from_values(children.iter());
3075 let syntax = Self::make(
3077 SyntaxKind::TypeParameter,
3088 Self { syntax, value }
3091 fn make_type_constraint(ctx: &C, arg0: Self, arg1: Self) -> Self {
3096 let value = V::from_values(children.iter());
3097 let syntax = Self::make(
3099 SyntaxKind::TypeConstraint,
3106 Self { syntax, value }
3109 fn make_darray_type_specifier(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self) -> Self {
3119 let value = V::from_values(children.iter());
3120 let syntax = Self::make(
3122 SyntaxKind::DarrayTypeSpecifier,
3134 Self { syntax, value }
3137 fn make_dictionary_type_specifier(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
3144 let value = V::from_values(children.iter());
3145 let syntax = Self::make(
3147 SyntaxKind::DictionaryTypeSpecifier,
3156 Self { syntax, value }
3159 fn make_closure_type_specifier(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self, arg5: Self, arg6: Self, arg7: Self, arg8: Self) -> Self {
3171 let value = V::from_values(children.iter());
3172 let syntax = Self::make(
3174 SyntaxKind::ClosureTypeSpecifier,
3188 Self { syntax, value }
3191 fn make_closure_parameter_type_specifier(ctx: &C, arg0: Self, arg1: Self) -> Self {
3196 let value = V::from_values(children.iter());
3197 let syntax = Self::make(
3199 SyntaxKind::ClosureParameterTypeSpecifier,
3206 Self { syntax, value }
3209 fn make_classname_type_specifier(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
3217 let value = V::from_values(children.iter());
3218 let syntax = Self::make(
3220 SyntaxKind::ClassnameTypeSpecifier,
3230 Self { syntax, value }
3233 fn make_field_specifier(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
3240 let value = V::from_values(children.iter());
3241 let syntax = Self::make(
3243 SyntaxKind::FieldSpecifier,
3252 Self { syntax, value }
3255 fn make_field_initializer(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
3261 let value = V::from_values(children.iter());
3262 let syntax = Self::make(
3264 SyntaxKind::FieldInitializer,
3272 Self { syntax, value }
3275 fn make_shape_type_specifier(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self, arg4: Self) -> Self {
3283 let value = V::from_values(children.iter());
3284 let syntax = Self::make(
3286 SyntaxKind::ShapeTypeSpecifier,
3296 Self { syntax, value }
3299 fn make_shape_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
3306 let value = V::from_values(children.iter());
3307 let syntax = Self::make(
3309 SyntaxKind::ShapeExpression,
3318 Self { syntax, value }
3321 fn make_tuple_expression(ctx: &C, arg0: Self, arg1: Self, arg2: Self, arg3: Self) -> Self {
3328 let value = V::from_values(children.iter());
3329 let syntax = Self::make(
3331 SyntaxKind::TupleExpression,
3340 Self { syntax, value }
3343 fn make_generic_type_specifier(ctx: &C, arg0: Self, arg1: Self) -> Self {
3348 let value = V::from_values(children.iter());
3349 let syntax = Self::make(
3351 SyntaxKind::GenericTypeSpecifier,
3358 Self { syntax, value }
3361 fn make_nullable_type_specifier(ctx: &C, arg0: Self, arg1: Self) -> Self {
3366 let value = V::from_values(children.iter());
3367 let syntax = Self::make(
3369 SyntaxKind::NullableTypeSpecifier,
3376 Self { syntax, value }
3379 fn make_like_type_specifier(ctx: &C, arg0: Self, arg1: Self) -> Self {
3384 let value = V::from_values(children.iter());
3385 let syntax = Self::make(
3387 SyntaxKind::LikeTypeSpecifier,
3394 Self { syntax, value }
3397 fn make_soft_type_specifier(ctx: &C, arg0: Self, arg1: Self) -> Self {
3402 let value = V::from_values(children.iter());
3403 let syntax = Self::make(
3405 SyntaxKind::SoftTypeSpecifier,
3412 Self { syntax, value }
3415 fn make_attributized_specifier(ctx: &C, arg0: Self, arg1: Self) -> Self {
3420 let value = V::from_values(children.iter());
3421 let syntax = Self::make(
3423 SyntaxKind::AttributizedSpecifier,
3430 Self { syntax, value }
3433 fn make_reified_type_argument(ctx: &C, arg0: Self, arg1: Self) -> Self {
3438 let value = V::from_values(children.iter());
3439 let syntax = Self::make(
3441 SyntaxKind::ReifiedTypeArgument,
3448 Self { syntax, value }
3451 fn make_type_arguments(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
3457 let value = V::from_values(children.iter());
3458 let syntax = Self::make(
3460 SyntaxKind::TypeArguments,
3468 Self { syntax, value }
3471 fn make_type_parameters(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
3477 let value = V::from_values(children.iter());
3478 let syntax = Self::make(
3480 SyntaxKind::TypeParameters,
3488 Self { syntax, value }
3491 fn make_tuple_type_specifier(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
3497 let value = V::from_values(children.iter());
3498 let syntax = Self::make(
3500 SyntaxKind::TupleTypeSpecifier,
3508 Self { syntax, value }
3511 fn make_union_type_specifier(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
3517 let value = V::from_values(children.iter());
3518 let syntax = Self::make(
3520 SyntaxKind::UnionTypeSpecifier,
3528 Self { syntax, value }
3531 fn make_intersection_type_specifier(ctx: &C, arg0: Self, arg1: Self, arg2: Self) -> Self {
3537 let value = V::from_values(children.iter());
3538 let syntax = Self::make(
3540 SyntaxKind::IntersectionTypeSpecifier,
3548 Self { syntax, value }
3551 fn make_error(ctx: &C, arg0: Self) -> Self {
3555 let value = V::from_values(children.iter());
3556 let syntax = Self::make(
3558 SyntaxKind::ErrorSyntax,
3564 Self { syntax, value }
3567 fn make_list_item(ctx: &C, arg0: Self, arg1: Self) -> Self {
3572 let value = V::from_values(children.iter());
3573 let syntax = Self::make(
3575 SyntaxKind::ListItem,
3582 Self { syntax, value }
3585 fn make_enum_atom_expression(ctx: &C, arg0: Self, arg1: Self) -> Self {
3590 let value = V::from_values(children.iter());
3591 let syntax = Self::make(
3593 SyntaxKind::EnumAtomExpression,
3600 Self { syntax, value }