Class FirstOperator
A representation of a first query expression operator.
Inherited Members
Namespace: System.Linq.CompilerServices.Optimizers
Assembly: Nuqleon.Linq.CompilerServices.Optimizers.dll
Syntax
public class FirstOperator : QueryOperator
Constructors
FirstOperator(Type, MonadMember)
Creates a representation of a first query expression operator.
Declaration
protected FirstOperator(Type elementType, MonadMember source)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Type | elementType | The input type of the resulting monad. |
| MonadMember | source | The source on which to operate. |
Properties
NodeType
Gets the OperatorType of the QueryOperator.
Declaration
public override OperatorType NodeType { get; }
Property Value
| Type | Description |
|---|---|
| OperatorType |
Overrides
Source
The source on which this operator acts.
Declaration
public MonadMember Source { get; }
Property Value
| Type | Description |
|---|---|
| MonadMember |
Methods
Accept<TQueryTree, TMonadMember, TQueryOperator>(QueryVisitor<TQueryTree, TMonadMember, TQueryOperator>)
Accepts the query expression tree node in the specified visitor.
Declaration
protected override 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. |
Overrides
Update(MonadMember)
Creates a first operator query expression that is like this one, but using the supplied children. If all of the children are the same, it will return this expression.
Declaration
public FirstOperator Update(MonadMember source)
Parameters
| Type | Name | Description |
|---|---|---|
| MonadMember | source | The Source child node of the result. |
Returns
| Type | Description |
|---|---|
| FirstOperator | This query expression if no children are changed or an expression with the updated children. |