Class SqlAggregateFunctionExpressionNode
- Namespace
- LfrlAnvil.Sql.Expressions.Functions
- Assembly
- LfrlAnvil.Sql.Core.dll
Represents an SQL syntax tree expression node that defines an aggregate function invocation.
public abstract class SqlAggregateFunctionExpressionNode : SqlExpressionNode
- Inheritance
-
SqlAggregateFunctionExpressionNode
- Derived
- Inherited Members
- Extension Methods
Constructors
SqlAggregateFunctionExpressionNode(ReadOnlyArray<SqlExpressionNode>, Chain<SqlTraitNode>)
Creates a new SqlAggregateFunctionExpressionNode instance with Custom type.
protected SqlAggregateFunctionExpressionNode(ReadOnlyArray<SqlExpressionNode> arguments, Chain<SqlTraitNode> traits)
Parameters
arguments
ReadOnlyArray<SqlExpressionNode>Sequential collection of invocation arguments.
traits
Chain<SqlTraitNode>Collection of decorating traits.
Properties
Arguments
Sequential collection of invocation arguments.
public ReadOnlyArray<SqlExpressionNode> Arguments { get; }
Property Value
FunctionType
SqlFunctionType of this aggregate function.
public SqlFunctionType FunctionType { get; }
Property Value
Traits
Collection of decorating traits.
public Chain<SqlTraitNode> Traits { get; }
Property Value
Methods
AddTrait(SqlTraitNode)
Creates a new SQL aggregate function invocation expression syntax tree node by adding a new trait
.
[Pure]
public virtual SqlAggregateFunctionExpressionNode AddTrait(SqlTraitNode trait)
Parameters
trait
SqlTraitNodeTrait to add.
Returns
- SqlAggregateFunctionExpressionNode
New SQL aggregate function invocation expression syntax tree node.
SetTraits(Chain<SqlTraitNode>)
Creates a new SQL aggregate function invocation expression syntax tree node by changing the Traits collection.
[Pure]
public abstract SqlAggregateFunctionExpressionNode SetTraits(Chain<SqlTraitNode> traits)
Parameters
traits
Chain<SqlTraitNode>Collection of traits to set.
Returns
- SqlAggregateFunctionExpressionNode
New SQL aggregate function invocation expression syntax tree node.