# expression v2.49.1 - Table of Contents

A Excel like expression parser, compatible with FLOIP Expression language.

## Modules

- [Expression](Expression.md): Documentation for `Expression`, a library to parse and evaluate
[Floip](https://floip.gitbook.io/flow-specification/expressions) compatible expressions
- [Expression.AST](Expression.AST.md): Type definitions for the Expression abstract syntax tree.
- [Expression.Autodoc](Expression.Autodoc.md): 
Extract `@expression_doc` attributes from modules defining callbacks
and automatically write doctests for those.
- [Expression.Callbacks](Expression.Callbacks.md): Use this module to implement one's own callbacks.
The standard callbacks available are implemented in `Expression.Callbacks.Standard`.
- [Expression.Callbacks.Standard](Expression.Callbacks.Standard.md): The function callbacks for the standard function set available
in FLOIP expressions.
- [Expression.Context](Expression.Context.md): 
A helper module for creating a context that can be
used with Expression.Eval.
- [Expression.Eval](Expression.Eval.md): Expression.Eval is responsible for taking an abstract syntax
tree (AST) as generated by Expression.Parser and evaluating it.
- [Expression.Parser](Expression.Parser.md): Expression.Parser is responsible for accepting a string
containing an expression and returning the abstract syntax
tree (AST) representing the expression.
- [Expression.Sigil](Expression.Sigil.md): Provides the `~EXPR` sigil for compile-time expression validation
and optional pre-parsing.
- [Expression.V2](Expression.V2.md): A second attempt at the parser, hopefully a little easier to read & maintain.
- [Expression.V2.Autodoc](Expression.V2.Autodoc.md): 
Extract `@expression_doc` attributes from modules defining callbacks
and automatically write doctests for those.
- [Expression.V2.Callbacks](Expression.V2.Callbacks.md): Use this module to implement one's own callbacks.
The standard callbacks available are implemented in `Expression.V2.Callbacks.Standard`.
- [Expression.V2.Callbacks.Standard](Expression.V2.Callbacks.Standard.md): Callback functions to be used in Expressions.
- [Expression.V2.Compat](Expression.V2.Compat.md): Deprecated compatibility module from the V1-to-V2 transition.
- [Expression.V2.Compile](Expression.V2.Compile.md): An compiler for AST returned by Expression.V2.Parser.
- [Expression.V2.Context](Expression.V2.Context.md): The context supplied to a function generated by `Expression.V2.Compile.compile/1`
- [Expression.V2.Parser](Expression.V2.Parser.md): A NimbleParsec parser for FLOIP expressions.

- Exceptions
  - [Expression.Error](Expression.Error.md): A structured error type for expression parsing and evaluation failures.

