public void FilterWhereExclusive(TextualWhereCondition condition)
 {
     for (int i = 0; i < Result.Rows.Count; i++)
     {
         if (!condition.Check(this, Result.GetRow(i)))
         {
             Result.RemoveRow(i);
         }
     }
 }
 public void FilterWhereInclusive(TextualWhereCondition condition)
 {
     foreach (var row in table.Rows)
     {
         if (!Result.Rows.Contains(row))
         {
             if (condition.Check(this, row))
             {
                 Result.AddRow(row);
             }
         }
     }
 }
Ejemplo n.º 3
0
        private TextualWhereCondition parseCondition(TextualOperation operation)
        {
            // column1
            string column = expectToken(TokenType.Identifier).Value;
            // =
            string op = expectToken(TokenType.Comparison).Value;
            object val;

            // 1
            if (matchToken(TokenType.Number))
            {
                val = Convert.ToDouble(expectToken(TokenType.Number).Value);
            }
            // "val1"
            else
            {
                val = expectToken(TokenType.String).Value;
            }
            return(new TextualWhereCondition(TextualWhereCondition.ParseWhereOperation(operation, op), column, val));
        }