Beispiel #1
0
        /// <summary>
        /// Creates a <see cref="FilterClause"/>.
        /// </summary>
        /// <param name="expression">The filter expression - this should evaluate to a single boolean value. Cannot be null.</param>
        /// <param name="rangeVariable">The parameter for the expression which represents a single value from the collection. Cannot be null.</param>
        /// <exception cref="System.ArgumentNullException">Throws if the input expression or rangeVariable is null.</exception>
        public FilterClause(SingleValueNode expression, RangeVariable rangeVariable)
        {
            ExceptionUtils.CheckArgumentNotNull(expression, "expression");
            ExceptionUtils.CheckArgumentNotNull(rangeVariable, "parameter");

            this.expression    = expression;
            this.rangeVariable = rangeVariable;
        }
Beispiel #2
0
        /// <summary>
        /// Creates an <see cref="OrderByClause"/>.
        /// </summary>
        /// <param name="thenBy">The next orderby to perform after performing this orderby, can be null in the case of only a single orderby expression.</param>
        /// <param name="expression">The order-by expression. Cannot be null.</param>
        /// <param name="direction">The direction to order.</param>
        /// <param name="rangeVariable">The rangeVariable for the expression which represents a single value from the collection we iterate over. </param>
        /// <exception cref="System.ArgumentNullException">Throws if the input expression or rangeVariable is null.</exception>
        public OrderByClause(OrderByClause thenBy, SingleValueNode expression, OrderByDirection direction, RangeVariable rangeVariable)
        {
            ExceptionUtils.CheckArgumentNotNull(expression, "expression");
            ExceptionUtils.CheckArgumentNotNull(rangeVariable, "parameter");

            this.thenBy        = thenBy;
            this.expression    = expression;
            this.direction     = direction;
            this.rangeVariable = rangeVariable;
        }
Beispiel #3
0
 /// <summary>
 /// Create an AllNode
 /// </summary>
 /// <param name="rangeVariables">The name of the rangeVariables list.</param>
 /// <param name="currentRangeVariable">The new range variable being added by this all node</param>
 public AllNode(Collection <RangeVariable> rangeVariables, RangeVariable currentRangeVariable)
     : base(rangeVariables, currentRangeVariable)
 {
 }
Beispiel #4
0
 /// <summary>
 /// Create a AnyNode
 /// </summary>
 /// <param name="parameters">The name of the parameter list.</param>
 /// <param name="currentRangeVariable">The name of the new range variable being added by this AnyNode</param>
 public AnyNode(Collection <RangeVariable> parameters, RangeVariable currentRangeVariable)
     : base(parameters, currentRangeVariable)
 {
 }
Beispiel #5
0
 /// <summary>
 /// Create a LambdaNode
 /// </summary>
 /// <param name="rangeVariables">The collection of rangeVariables in scope for this Any or All.</param>
 /// <param name="currentRangeVariable">The newest range variable added for by this Any or All.</param>
 protected LambdaNode(Collection <RangeVariable> rangeVariables, RangeVariable currentRangeVariable)
 {
     this.rangeVariables       = rangeVariables;
     this.currentRangeVariable = currentRangeVariable;
 }