Struct SqlDataSourceTraits
- Namespace
- LfrlAnvil.Sql.Expressions.Visitors
- Assembly
- LfrlAnvil.Sql.Core.dll
Represents a collection of traits attached to an SqlDataSourceNode.
public readonly record struct SqlDataSourceTraits : IEquatable<SqlDataSourceTraits>
- Implements
- Inherited Members
Constructors
SqlDataSourceTraits(Chain<ReadOnlyArray<SqlCommonTableExpressionNode>>, bool, SqlDistinctTraitNode?, SqlConditionNode?, Chain<ReadOnlyArray<SqlExpressionNode>>, SqlConditionNode?, Chain<ReadOnlyArray<SqlWindowDefinitionNode>>, SqlSortTraitInfo, SqlExpressionNode?, SqlExpressionNode?, Chain<SqlTraitNode>)
Represents a collection of traits attached to an SqlDataSourceNode.
public SqlDataSourceTraits(Chain<ReadOnlyArray<SqlCommonTableExpressionNode>> CommonTableExpressions, bool ContainsRecursiveCommonTableExpression, SqlDistinctTraitNode? Distinct, SqlConditionNode? Filter, Chain<ReadOnlyArray<SqlExpressionNode>> Aggregations, SqlConditionNode? AggregationFilter, Chain<ReadOnlyArray<SqlWindowDefinitionNode>> Windows, SqlSortTraitInfo Ordering, SqlExpressionNode? Limit, SqlExpressionNode? Offset, Chain<SqlTraitNode> Custom)
Parameters
CommonTableExpressionsChain<ReadOnlyArray<SqlCommonTableExpressionNode>>Collection of common table expressions that is the result of parsing of all SqlCommonTableExpressionTraitNode instances.
ContainsRecursiveCommonTableExpressionboolSpecifies whether any of SqlCommonTableExpressionTraitNode instances returned true for their ContainsRecursive property.
DistinctSqlDistinctTraitNodeSqlDistinctTraitNode instance.
FilterSqlConditionNodePredicate that is the result of parsing all SqlFilterTraitNode instances.
AggregationsChain<ReadOnlyArray<SqlExpressionNode>>Collection of aggregation expressions that is the result of parsing of all SqlAggregationTraitNode instances.
AggregationFilterSqlConditionNodePredicate that is the result of parsing all SqlAggregationFilterTraitNode instances.
WindowsChain<ReadOnlyArray<SqlWindowDefinitionNode>>Collection of window definitions that is the result of parsing of all SqlWindowDefinitionTraitNode instances.
OrderingSqlSortTraitInfoExtracted information about all parsed sort traits.
LimitSqlExpressionNodeUnderlying value of the last SqlLimitTraitNode instance.
OffsetSqlExpressionNodeUnderlying value of the last SqlOffsetTraitNode instance.
CustomChain<SqlTraitNode>Collection of all unrecognized SqlTraitNode instances.
Properties
AggregationFilter
Predicate that is the result of parsing all SqlAggregationFilterTraitNode instances.
public SqlConditionNode? AggregationFilter { get; init; }
Property Value
Aggregations
Collection of aggregation expressions that is the result of parsing of all SqlAggregationTraitNode instances.
public Chain<ReadOnlyArray<SqlExpressionNode>> Aggregations { get; init; }
Property Value
CommonTableExpressions
Collection of common table expressions that is the result of parsing of all SqlCommonTableExpressionTraitNode instances.
public Chain<ReadOnlyArray<SqlCommonTableExpressionNode>> CommonTableExpressions { get; init; }
Property Value
ContainsRecursiveCommonTableExpression
Specifies whether any of SqlCommonTableExpressionTraitNode instances returned true for their ContainsRecursive property.
public bool ContainsRecursiveCommonTableExpression { get; init; }
Property Value
Custom
Collection of all unrecognized SqlTraitNode instances.
public Chain<SqlTraitNode> Custom { get; init; }
Property Value
Distinct
SqlDistinctTraitNode instance.
public SqlDistinctTraitNode? Distinct { get; init; }
Property Value
Filter
Predicate that is the result of parsing all SqlFilterTraitNode instances.
public SqlConditionNode? Filter { get; init; }
Property Value
Limit
Underlying value of the last SqlLimitTraitNode instance.
public SqlExpressionNode? Limit { get; init; }
Property Value
Offset
Underlying value of the last SqlOffsetTraitNode instance.
public SqlExpressionNode? Offset { get; init; }
Property Value
Ordering
Extracted information about all parsed sort traits.
public SqlSortTraitInfo Ordering { get; init; }
Property Value
Windows
Collection of window definitions that is the result of parsing of all SqlWindowDefinitionTraitNode instances.
public Chain<ReadOnlyArray<SqlWindowDefinitionNode>> Windows { get; init; }