# Grasshopper2.Expressions namespace

Assembly: [Grasshopper2](https://developer.rhino3d.com/api/gh2/assembly/grasshopper2.md)

## Interfaces

- [IExpressionRuntime](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.iexpressionruntime.md): Interface for expression runtime assemblies.

## Classes

- [CodeBuilder](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.codebuilder.md): A string builder for composing code-like strings.
- [CodeCompiler](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.codecompiler.md): Compiler utility class for C# and VB compilation. Although you can technically re-use the same CodeCompiler instance to compile consecutive bits of source, we highly recommend creating a new instance for every new compile job. This class leverages the Roslyn compiler behind the scenes.
- [CodeDiagnostic](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.codediagnostic.md): Represents a single message generated by the compiler.
- [CompilationException](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.compilationexception.md): Exception used during compilation of expression code.
- [EvaluationException](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.evaluationexception.md): Exception used during evaluation of an expression.
- [Expression](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.expression.md): Represents an expression for a specific input output type.
- [ExpressionCs](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.expressioncs.md): Utility class for creating valid C# source and assemblies from expression syntax.
- [ExpressionMethodException](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.expressionmethodexception.md)
- [Methods](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.methods.md): Class containing some of the methods that are invoked by certain expression methods or operators.
- [ParsingException](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.parsingexception.md): Exception used during translation of expression syntax into compilable code.
- [Resolver](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.resolver.md): Describes an object which can resolve named variables.
- [Sequence](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.sequence.md): An expression specifically designed to
- [Sequence.Qq](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.sequence.qq.md): Sequence tracker class to be used during sequence construction. This class has an indexer allowing for uniqueness testing. This class *MUST* be public otherwise the dynamic compiler can't resolve the indexers.
- [Sequence.Sq](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.sequence.sq.md): Sequence tracker class to be used during sequence construction. This class has an indexer allowing the retrieval of older values from the sequence. This class *MUST* be public otherwise the dynamic compiler can't resolve the indexers.
- [UnknownVariableException](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.unknownvariableexception.md): Thrown when an unrecognised variable name is used.

## Delegates

- [Resolve](https://developer.rhino3d.com/api/gh2/type/grasshopper2.expressions.resolve.md): Undeclared variable resolution delegate.
