Railroad Diagrams
Generated from src/vitte/grammar/vitte.ebnf.
- program
- toplevel
- space_decl
- package_decl
- package_items
- package_item
- package_value
- from_import_decl
- import_list
- import_items
- import_item
- use_decl
- use_glob
- use_group
- export_decl
- const_decl
- static_decl
- global_decl
- type_alias_decl
- opaque_type_decl
- foreign_type_decl
- form_decl
- class_decl
- union_decl
- form_items
- form_item
- class_items
- class_item
- field_list
- field_item
- pick_decl
- case_list
- case_item
- case_payload
- case_field
- flags_decl
- flag_list
- flag_item
- trait_decl
- trait_item
- proc_signature
- impl_decl
- impl_head
- impl_item
- proc_decl
- proc_edit
- proc_suffix
- foreign_proc_decl
- macro_decl
- macro_param_list
- macro_param
- macro_kind
- comptime_decl
- static_assert_decl
- test_decl
- bench_decl
- entry_decl
- visibility
- visibility_scope
- external_clause
- callconv
- generic_params
- generic_param_list
- generic_param
- where_clause
- where_bounds
- where_bound
- trait_bound
- param_list
- param
- self_param
- normal_param
- variadic_param
- param_mode
- effects_clause
- requires_clause
- capability_list
- capability
- module_path
- package_path
- relative
- package_parts
- ident_list
- attr_prefix
- inner_attribute
- outer_attribute
- shorthand_attribute
- doc_comment
- docstring
- attr_path
- attr_arg_list
- attr_arg
- block
- inline_block
- block_body
- stmt_end
- stmt
- local_const_stmt
- let_stmt
- asm_stmt
- unsafe_stmt
- make_stmt
- set_stmt
- assign_target
- give_stmt
- return_stmt
- try_stmt
- defer_stmt
- emit_stmt
- assert_stmt
- panic_stmt
- unreachable_stmt
- if_stmt
- while_stmt
- loop_stmt
- for_stmt
- break_stmt
- continue_stmt
- select_stmt
- match_stmt
- match_arm_body
- when_match_stmt
- with_stmt
- critical_stmt
- atomic_stmt
- volatile_stmt
- preempt_stmt
- irq_stmt
- goto_stmt
- label_stmt
- expr_stmt
- express
- assign_expr
- assign_op
- ternary_expr
- coalesce_expr
- range_expr
- or_expr
- and_expr
- bit_or_expr
- bit_xor_expr
- bit_and_expr
- eq_expr
- rel_expr
- rel_op
- shift_expr
- add_expr
- mul_expr
- cast_expr
- unary_expr
- postfix_expr
- call_suffix
- member_suffix
- index_suffix
- try_suffix
- await_suffix
- index_expr
- slice_expr
- primary
- path_expr
- arg_list
- arg
- tuple_lit
- set_bed
- map_lit
- map_items
- map_item
- bytes_lit
- resource_lit
- resource_items
- resource_item
- struct_lit
- type_path
- field_init_list
- field_init
- if_expr
- proc_expr
- match_expr
- lambda_expr
- unsafe_expr
- builtin_expr
- sizeof_expr
- alignof_expr
- offsetof_expr
- typeof_expr
- nameof_expr
- pattern
- pattern_or
- pattern_atom
- pattern_bind
- pattern_ctor
- pattern_head
- pattern_args
- pattern_struct
- pattern_fields
- pattern_field
- pattern_tuple
- pattern_list
- pattern_range
- type_expr
- qualified_type
- type_qual
- addr_space
- reference_type
- pointer_type
- optional_type
- fixed_array_type
- slice_type
- tuple_type
- proc_type
- type_list
- param_type
- dyn_type
- impl_trait_type
- union_type_expr
- type_primary
- lifetime
- primitive_type
- literal
- list_lit
- list_comp
- bool_lit
- null_lit
- int_lit
- float_lit
- exponent
- char_lit
- char_char
- string_lit
- string_char
- escape_seq
- raw_string_lit
- raw_string_char
- line_comment
- block_comment
- zone_comment
- identity
- suffix
- W.S.
- WS1
- NEWLINE
- LETTER
- DIGIT
- BINDIGIT
- OCTDIGIT
- HEXDIGIT
- EOF