package pratter
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha512=89fc9d0645e55dda7201a2cb47fe7bee774db92892c528efcbec179f270563088b1fab1d8d25ebca97b389947c2741f7a05127996cd1a4e3c7fe726be45ab835
doc/pratter/Pratter/Make/index.html
Module Pratter.MakeSource
Parameters
Signature
type error = [ | `OpConflict of Sup.term * Sup.term(*Priority or associativiy conflict between two operators. In
*)`OpConflict (t,o), operatorogenerates a conflict which prevents termtto be parsed.| `UnexpectedInfix of Sup.term(*An infix operator appears without left context. If
*)+is an infix operator, it is raised in, e.g.,+ x xorx + + x x.| `UnexpectedPostfix of Sup.term(*A postfix operator appears without left context. If
*)!is a postfix operator, it is raised in! x.| `TooFewArguments(*More arguments are expected. It is raised for instance on partial application of operators, such as
*)x +.
]Errors that can be encountered while parsing a stream of terms.
expression tbl s parses stream of tokens s with table of operators tbl. It transforms a sequence of applications to a structured application tree containing infix and prefix operators. For instance, assuming that + is declared infix, it transforms 3 + 5 + 2, represented as @(@(@(@(3,+),5),+),2) (where @ is the application) into (@(+(@(+,3,5)),2).