private static Filter Not(UnaryExpression node) { Log.WriteLine(string.Format(" -> Not : {0}", node)); Log.WriteLine(string.Format(" -> Operand : {0}", node.Operand)); return(FilterCombiner.CombineNot(FilterParser.Parse(node.Operand))); }
private static Filter NotEqual(BinaryExpression node) { Log.WriteLine(string.Format(" -> NotEqual : {0}", node)); Log.WriteLine(string.Format(" -> Left : {0}", node.Left)); Log.WriteLine(string.Format(" -> Right : {0}", node.Right)); return(FilterCombiner.CombineNot(FilterParser.Equal(node))); }
private static Filter OrElse(BinaryExpression node) { Log.WriteLine(string.Format(" -> OrElse : {0}", node)); Log.WriteLine(string.Format(" -> Left : {0}", node.Left)); Log.WriteLine(string.Format(" -> Right : {0}", node.Right)); return(FilterCombiner.CombineOr(Parse(node.Left), Parse(node.Right))); }
private static void ParseFilter(Expression node, SearchBody searchBody) { Log.WriteLine(string.Format(" -> Parse filter : {0}", node)); searchBody.Filter = FilterCombiner.CombineAnd(searchBody.Filter, FilterParser.Parse(ExpressionParser.Strip(node))); }
private static void ParseFilter(Expression node, FilteredQuery query) { Log.WriteLine(string.Format(" -> Parse filter : {0}", node)); query.Filtered.Filter = FilterCombiner.CombineAnd(query.Filtered.Filter, FilterParser.Parse(ExpressionParser.Strip(node))); }