public SkipTakeExpression(ConstantExpression skipTake, DirectoryExpressionType nodeType) : base(skipTake, nodeType) { if (nodeType != DirectoryExpressionType.Take && nodeType != DirectoryExpressionType.Skip) { throw new Exception(); } }
private SkipTakeExpression CreateSkipTake(ConstantExpression expression, DirectoryExpressionType expressionType) { if (expression.Type == typeof(int)) { return(new SkipTakeExpression(expression, expressionType)); } return(null); }
private SkipTakeExpression VisitMethod(MethodCallExpression method, DirectoryExpressionType expressionType) { var node = VisitMethodCall(method); if (node.NodeType.Is(expressionType)) { return(node as SkipTakeExpression); } throw new Exception(); }
protected DirectoryExpressionBase(Expression expression, DirectoryExpressionType type) { _expression = expression; _expressionType = type; }
internal static bool Is(this ExpressionType type, DirectoryExpressionType directoryType) { return(type == (ExpressionType)directoryType); }
protected DirectoryExpressionBase(Expression expression, DirectoryExpressionType type) : base((ExpressionType)type, expression.Type) { _expression = expression; }
public DirectoryExpression(Expression expression, DirectoryExpressionType type) : base(expression, type) { _whereClause = new List <WhereExpression>(); }