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); } } } }
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)); }