Waddle_Language/grammar/main.bnf

22 lines
683 B
BNF

<program> ::= <use_statement>* <top_level_definition>*
<use_statement> ::= <use_statement_identifier> <identifier> ("." <identifier>)* ";"
<top_level_definition> ::=
<type_declaration>
| <interface_declaration>
| <error_declaration>
import "core/keywords.bnf"
import "core/base_types.bnf"
import "core/identifiers.bnf"
import "core/literals.bnf"
import "core/visibility.bnf"
import "declarations/error_declarations.bnf"
import "declarations/type_declarations.bnf"
import "declarations/function_declarations.bnf"
import "operations/expressions.bnf"
import "operations/method_calls.bnf"
import "operations/control_flow.bnf"
import "interfaces/interface_definitions.bnf"