Module Modelica_parser

module Modelica_parser: sig .. end
Parsers for different parts of the Modelica Syntax.

exception SyntaxError of Location.t
val error_message : Location.t -> string -> string
type 'a parser = (unit -> Modelica_lexer.tokplus) ->
(unit -> Modelica_lexer.tokplus option) -> 'a
A parser is a function that takes two token generators and yields a piece of abstract syntax. The first token generator yields the next token from the input and the second yields the last token that has been delivered, or None, if no token has been delivered so far. The second generator is only used for error reporting (it is expected to yield the last token that has been looked at by the LR(1) parser).
val texpr_parser : Syntax.texp parser
Parser for type-expressions
Raises SyntaxError on syntax-error
val expr_parser : Syntax.exp parser
Parser for expressions
Raises SyntaxError on syntax-error
val stmt_parser : Syntax.statement parser
Parser for statements
Raises SyntaxError on syntax-error
val eq_parser : Syntax.equation parser
Parser for equations
Raises SyntaxError on syntax-error
val import_parser : Syntax.import parser
Parser for import-clauses
Raises SyntaxError on syntax-error
val extends_parser : Syntax.extend parser
Parser for extends-clauses
Raises SyntaxError on syntax-error
val defs_parser : Syntax.definition list parser
Parser for component definitions. Will expand definition lists (i.e. parameter Real x,y; will generate abstract syntax equivalent to parameter Real x; parameter Real y;)
Raises SyntaxError on syntax-error
val td_parser : Syntax.typedef parser
Parser for type-definitions
Raises SyntaxError on syntax-error
val unit_parser : Syntax.unit_ parser
Parser for whole compilation units (aka 'Stored_Definition')
Raises SyntaxError on syntax-error