Class QueryTree
A representation of a query expression as a tree.
Namespace: System.Linq.CompilerServices.Optimizers
Assembly: Nuqleon.Linq.CompilerServices.Optimizers.dll
Syntax
public abstract class QueryTree : Object
Constructors
QueryTree()
Declaration
protected QueryTree()
Properties
QueryNodeType
Gets the QueryNodeType of the QueryTree.
Declaration
public abstract QueryNodeType QueryNodeType { get; }
Property Value
Type | Description |
---|---|
QueryNodeType |
Methods
Accept<TQueryTree, TMonadMember, TQueryOperator>(QueryVisitor<TQueryTree, TMonadMember, TQueryOperator>)
Accepts the query expression tree node in the specified visitor.
Declaration
protected abstract TQueryTree Accept<TQueryTree, TMonadMember, TQueryOperator>(QueryVisitor<TQueryTree, TMonadMember, TQueryOperator> visitor)
where TMonadMember : TQueryTree where TQueryOperator : TMonadMember
Parameters
Type | Name | Description |
---|---|---|
QueryVisitor<TQueryTree, TMonadMember, TQueryOperator> | visitor | Visitor to process the current query expression tree node. |
Returns
Type | Description |
---|---|
TQueryTree | Result of visiting the node. |
Type Parameters
Name | Description |
---|---|
TQueryTree | Target type for query expressions. |
TMonadMember | Target type for monad member query expressions. This type has to derive from TQueryTree. |
TQueryOperator | Target type for query operator query expressions. This type has to derive from TMonadMember. |
Reduce()
Reduces the current node to an equivalent System.Linq.Expressions.Expression.
Declaration
public abstract Expression Reduce()
Returns
Type | Description |
---|---|
System.Linq.Expressions.Expression | This node's equivalent System.Linq.Expressions.Expression. |