pub mod abstract_type {
use crate::syntax::fields::Field;
pub const TRAIT: Field<true> = Field::new("trait_id");
}
pub mod array_expression {
use crate::syntax::fields::Field;
pub const LENGTH: Field<false> = Field::new("length_id");
}
pub mod array_type {
use crate::syntax::fields::Field;
pub const ELEMENT: Field<true> = Field::new("element_id");
pub const LENGTH: Field<false> = Field::new("length_id");
}
pub mod assignment_expression {
use crate::syntax::fields::Field;
pub const LEFT: Field<true> = Field::new("left_id");
pub const RIGHT: Field<true> = Field::new("right_id");
}
pub mod associated_type {
use crate::syntax::fields::Field;
pub const BOUNDS: Field<false> = Field::new("bounds_id");
pub const NAME: Field<true> = Field::new("name_id");
pub const TYPE_PARAMETERS: Field<false> = Field::new("type_parameters_id");
}
pub mod attribute {
use crate::syntax::fields::Field;
pub const ARGUMENTS: Field<false> = Field::new("arguments_id");
pub const VALUE: Field<false> = Field::new("value_id");
}
pub mod binary_expression {
use crate::syntax::fields::Field;
pub const LEFT: Field<true> = Field::new("left_id");
pub const OPERATOR: Field<true> = Field::new("operator_id");
pub const RIGHT: Field<true> = Field::new("right_id");
}
pub mod block_comment {
use crate::syntax::fields::Field;
pub const DOC: Field<false> = Field::new("doc_id");
pub const INNER: Field<false> = Field::new("inner_id");
pub const OUTER: Field<false> = Field::new("outer_id");
}
pub mod call_expression {
use crate::syntax::fields::Field;
pub const ARGUMENTS: Field<true> = Field::new("arguments_id");
pub const FUNCTION: Field<true> = Field::new("function_id");
}
pub mod closure_expression {
use crate::syntax::fields::Field;
pub const BODY: Field<true> = Field::new("body_id");
pub const PARAMETERS: Field<true> = Field::new("parameters_id");
pub const RETURN_TYPE: Field<false> = Field::new("return_type_id");
}
pub mod compound_assignment_expr {
use crate::syntax::fields::Field;
pub const LEFT: Field<true> = Field::new("left_id");
pub const OPERATOR: Field<true> = Field::new("operator_id");
pub const RIGHT: Field<true> = Field::new("right_id");
}
pub mod const_block {
use crate::syntax::fields::Field;
pub const BODY: Field<true> = Field::new("body_id");
}
pub mod const_item {
use crate::syntax::fields::Field;
pub const NAME: Field<true> = Field::new("name_id");
pub const TYPE: Field<true> = Field::new("type_id");
pub const VALUE: Field<false> = Field::new("value_id");
}
pub mod const_parameter {
use crate::syntax::fields::Field;
pub const NAME: Field<true> = Field::new("name_id");
pub const TYPE: Field<true> = Field::new("type_id");
}
pub mod constrained_type_parameter {
use crate::syntax::fields::Field;
pub const BOUNDS: Field<true> = Field::new("bounds_id");
pub const LEFT: Field<true> = Field::new("left_id");
}
pub mod dynamic_type {
use crate::syntax::fields::Field;
pub const TRAIT: Field<true> = Field::new("trait_id");
}
pub mod enum_item {
use crate::syntax::fields::Field;
pub const BODY: Field<true> = Field::new("body_id");
pub const NAME: Field<true> = Field::new("name_id");
pub const TYPE_PARAMETERS: Field<false> = Field::new("type_parameters_id");
}
pub mod enum_variant {
use crate::syntax::fields::Field;
pub const BODY: Field<false> = Field::new("body_id");
pub const NAME: Field<true> = Field::new("name_id");
pub const VALUE: Field<false> = Field::new("value_id");
}
pub mod extern_crate_declaration {
use crate::syntax::fields::Field;
pub const ALIAS: Field<false> = Field::new("alias_id");
pub const NAME: Field<true> = Field::new("name_id");
}
pub mod field_declaration {
use crate::syntax::fields::Field;
pub const NAME: Field<true> = Field::new("name_id");
pub const TYPE: Field<true> = Field::new("type_id");
}
pub mod field_expression {
use crate::syntax::fields::Field;
pub const FIELD: Field<true> = Field::new("field_id");
pub const VALUE: Field<true> = Field::new("value_id");
}
pub mod field_initializer {
use crate::syntax::fields::Field;
pub const FIELD: Field<true> = Field::new("field_id");
pub const VALUE: Field<true> = Field::new("value_id");
}
pub mod field_pattern {
use crate::syntax::fields::Field;
pub const NAME: Field<true> = Field::new("name_id");
pub const PATTERN: Field<false> = Field::new("pattern_id");
}
pub mod for_expression {
use crate::syntax::fields::Field;
pub const BODY: Field<true> = Field::new("body_id");
pub const PATTERN: Field<true> = Field::new("pattern_id");
pub const VALUE: Field<true> = Field::new("value_id");
}
pub mod foreign_mod_item {
use crate::syntax::fields::Field;
pub const BODY: Field<false> = Field::new("body_id");
}
pub mod function_item {
use crate::syntax::fields::Field;
pub const BODY: Field<true> = Field::new("body_id");
pub const NAME: Field<true> = Field::new("name_id");
pub const PARAMETERS: Field<true> = Field::new("parameters_id");
pub const RETURN_TYPE: Field<false> = Field::new("return_type_id");
pub const TYPE_PARAMETERS: Field<false> = Field::new("type_parameters_id");
}
pub mod function_signature_item {
use crate::syntax::fields::Field;
pub const NAME: Field<true> = Field::new("name_id");
pub const PARAMETERS: Field<true> = Field::new("parameters_id");
pub const RETURN_TYPE: Field<false> = Field::new("return_type_id");
pub const TYPE_PARAMETERS: Field<false> = Field::new("type_parameters_id");
}
pub mod function_type {
use crate::syntax::fields::Field;
pub const PARAMETERS: Field<true> = Field::new("parameters_id");
pub const RETURN_TYPE: Field<false> = Field::new("return_type_id");
pub const TRAIT: Field<false> = Field::new("trait_id");
}
pub mod generic_function {
use crate::syntax::fields::Field;
pub const FUNCTION: Field<true> = Field::new("function_id");
pub const TYPE_ARGUMENTS: Field<true> = Field::new("type_arguments_id");
}
pub mod generic_type {
use crate::syntax::fields::Field;
pub const TYPE: Field<true> = Field::new("type_id");
pub const TYPE_ARGUMENTS: Field<true> = Field::new("type_arguments_id");
}
pub mod generic_type_with_turbofish {
use crate::syntax::fields::Field;
pub const TYPE: Field<true> = Field::new("type_id");
pub const TYPE_ARGUMENTS: Field<true> = Field::new("type_arguments_id");
}
pub mod higher_ranked_trait_bound {
use crate::syntax::fields::Field;
pub const TYPE: Field<true> = Field::new("type_id");
pub const TYPE_PARAMETERS: Field<true> = Field::new("type_parameters_id");
}
pub mod if_expression {
use crate::syntax::fields::Field;
pub const ALTERNATIVE: Field<false> = Field::new("alternative_id");
pub const CONDITION: Field<true> = Field::new("condition_id");
pub const CONSEQUENCE: Field<true> = Field::new("consequence_id");
}
pub mod impl_item {
use crate::syntax::fields::Field;
pub const BODY: Field<false> = Field::new("body_id");
pub const TRAIT: Field<false> = Field::new("trait_id");
pub const TYPE: Field<true> = Field::new("type_id");
pub const TYPE_PARAMETERS: Field<false> = Field::new("type_parameters_id");
}
pub mod let_condition {
use crate::syntax::fields::Field;
pub const PATTERN: Field<true> = Field::new("pattern_id");
pub const VALUE: Field<true> = Field::new("value_id");
}
pub mod let_declaration {
use crate::syntax::fields::Field;
pub const ALTERNATIVE: Field<false> = Field::new("alternative_id");
pub const PATTERN: Field<true> = Field::new("pattern_id");
pub const TYPE: Field<false> = Field::new("type_id");
pub const VALUE: Field<false> = Field::new("value_id");
}
pub mod line_comment {
use crate::syntax::fields::Field;
pub const DOC: Field<false> = Field::new("doc_id");
pub const INNER: Field<false> = Field::new("inner_id");
pub const OUTER: Field<false> = Field::new("outer_id");
}
pub mod loop_expression {
use crate::syntax::fields::Field;
pub const BODY: Field<true> = Field::new("body_id");
}
pub mod macro_definition {
use crate::syntax::fields::Field;
pub const NAME: Field<true> = Field::new("name_id");
}
pub mod macro_invocation {
use crate::syntax::fields::Field;
pub const MACRO: Field<true> = Field::new("macro_id");
}
pub mod macro_rule {
use crate::syntax::fields::Field;
pub const LEFT: Field<true> = Field::new("left_id");
pub const RIGHT: Field<true> = Field::new("right_id");
}
pub mod match_arm {
use crate::syntax::fields::Field;
pub const PATTERN: Field<true> = Field::new("pattern_id");
pub const VALUE: Field<true> = Field::new("value_id");
}
pub mod match_expression {
use crate::syntax::fields::Field;
pub const BODY: Field<true> = Field::new("body_id");
pub const VALUE: Field<true> = Field::new("value_id");
}
pub mod match_pattern {
use crate::syntax::fields::Field;
pub const CONDITION: Field<false> = Field::new("condition_id");
}
pub mod mod_item {
use crate::syntax::fields::Field;
pub const BODY: Field<false> = Field::new("body_id");
pub const NAME: Field<true> = Field::new("name_id");
}
pub mod optional_type_parameter {
use crate::syntax::fields::Field;
pub const DEFAULT_TYPE: Field<true> = Field::new("default_type_id");
pub const NAME: Field<true> = Field::new("name_id");
}
pub mod ordered_field_declaration_list {
use crate::syntax::fields::Field;
pub const TYPE: Field<false> = Field::new("type_id");
}
pub mod parameter {
use crate::syntax::fields::Field;
pub const PATTERN: Field<true> = Field::new("pattern_id");
pub const TYPE: Field<true> = Field::new("type_id");
}
pub mod pointer_type {
use crate::syntax::fields::Field;
pub const TYPE: Field<true> = Field::new("type_id");
}
pub mod qualified_type {
use crate::syntax::fields::Field;
pub const ALIAS: Field<true> = Field::new("alias_id");
pub const TYPE: Field<true> = Field::new("type_id");
}
pub mod reference_expression {
use crate::syntax::fields::Field;
pub const VALUE: Field<true> = Field::new("value_id");
}
pub mod reference_type {
use crate::syntax::fields::Field;
pub const TYPE: Field<true> = Field::new("type_id");
}
pub mod scoped_identifier {
use crate::syntax::fields::Field;
pub const NAME: Field<true> = Field::new("name_id");
pub const PATH: Field<false> = Field::new("path_id");
}
pub mod scoped_type_identifier {
use crate::syntax::fields::Field;
pub const NAME: Field<true> = Field::new("name_id");
pub const PATH: Field<false> = Field::new("path_id");
}
pub mod scoped_use_list {
use crate::syntax::fields::Field;
pub const LIST: Field<true> = Field::new("list_id");
pub const PATH: Field<false> = Field::new("path_id");
}
pub mod static_item {
use crate::syntax::fields::Field;
pub const NAME: Field<true> = Field::new("name_id");
pub const TYPE: Field<true> = Field::new("type_id");
pub const VALUE: Field<false> = Field::new("value_id");
}
pub mod struct_expression {
use crate::syntax::fields::Field;
pub const BODY: Field<true> = Field::new("body_id");
pub const NAME: Field<true> = Field::new("name_id");
}
pub mod struct_item {
use crate::syntax::fields::Field;
pub const BODY: Field<false> = Field::new("body_id");
pub const NAME: Field<true> = Field::new("name_id");
pub const TYPE_PARAMETERS: Field<false> = Field::new("type_parameters_id");
}
pub mod struct_pattern {
use crate::syntax::fields::Field;
pub const TYPE: Field<true> = Field::new("type_id");
}
pub mod token_binding_pattern {
use crate::syntax::fields::Field;
pub const NAME: Field<true> = Field::new("name_id");
pub const TYPE: Field<true> = Field::new("type_id");
}
pub mod trait_item {
use crate::syntax::fields::Field;
pub const BODY: Field<true> = Field::new("body_id");
pub const BOUNDS: Field<false> = Field::new("bounds_id");
pub const NAME: Field<true> = Field::new("name_id");
pub const TYPE_PARAMETERS: Field<false> = Field::new("type_parameters_id");
}
pub mod tuple_struct_pattern {
use crate::syntax::fields::Field;
pub const TYPE: Field<true> = Field::new("type_id");
}
pub mod type_binding {
use crate::syntax::fields::Field;
pub const NAME: Field<true> = Field::new("name_id");
pub const TYPE: Field<true> = Field::new("type_id");
pub const TYPE_ARGUMENTS: Field<false> = Field::new("type_arguments_id");
}
pub mod type_cast_expression {
use crate::syntax::fields::Field;
pub const TYPE: Field<true> = Field::new("type_id");
pub const VALUE: Field<true> = Field::new("value_id");
}
pub mod type_item {
use crate::syntax::fields::Field;
pub const NAME: Field<true> = Field::new("name_id");
pub const TYPE: Field<true> = Field::new("type_id");
pub const TYPE_PARAMETERS: Field<false> = Field::new("type_parameters_id");
}
pub mod union_item {
use crate::syntax::fields::Field;
pub const BODY: Field<true> = Field::new("body_id");
pub const NAME: Field<true> = Field::new("name_id");
pub const TYPE_PARAMETERS: Field<false> = Field::new("type_parameters_id");
}
pub mod use_as_clause {
use crate::syntax::fields::Field;
pub const ALIAS: Field<true> = Field::new("alias_id");
pub const PATH: Field<true> = Field::new("path_id");
}
pub mod use_declaration {
use crate::syntax::fields::Field;
pub const ARGUMENT: Field<true> = Field::new("argument_id");
}
pub mod variadic_parameter {
use crate::syntax::fields::Field;
pub const PATTERN: Field<false> = Field::new("pattern_id");
}
pub mod where_predicate {
use crate::syntax::fields::Field;
pub const BOUNDS: Field<true> = Field::new("bounds_id");
pub const LEFT: Field<true> = Field::new("left_id");
}
pub mod while_expression {
use crate::syntax::fields::Field;
pub const BODY: Field<true> = Field::new("body_id");
pub const CONDITION: Field<true> = Field::new("condition_id");
}