[−][src]Crate prec
A crate to enable easy use of the precedence climbing algorithm. You plug your own handler function, token struct, and operator enum, and this crate provides the algorithm.
Because the crate is sufficiently generic, It's possible to add
very complex behavior without having to roll your own algorith.
the int_math
example demonstrates adding parenteses that respect ordering.
The relationships between the required structures you provide are enforced by std library traits, which will let your structures play well with your existing code base.
Structs
Climber | A struct containing the order of operations rules and a pointer to a handler function. |
Expression | A faithful, always-valid representation of an expression. |
Rule | A single operator and an Assoc |
Enums
Assoc | Used within a Rule to indicate the left/right association of an operator. |
Traits
Token |