# Functions
Current returns the expression whose DSL is currently being executed.
Execute runs the given DSL to initialize the given expression.
IncompatibleDSL should be called by DSL functions when they are invoked in an incorrect context (e.g.
InvalidArgError records an invalid argument error.
Register appends a root expression to the current Context root expressions.
ReportError records a DSL error for reporting post DSL execution.
Reset resets the eval context, mostly useful for tests.
RunDSL iterates through the root expressions and calls WalkSets on each to retrieve the expression sets.
ToExpressionSet is a convenience function that accepts a slice of expressions and builds the corresponding ExpressionSet.
# Constants
Top is the expression returned by Current when the execution stack is empty.
# Variables
Context contains the state used by the engine to execute the DSL.
# Structs
ValidationErrors records the errors encountered when running Validate.