public static IQueryParser CreateQueryParser() { //Create Custom node registry var customNodeTypeRegistry = new MethodInfoBasedNodeTypeRegistry(); //register the "Nest" clause type customNodeTypeRegistry.Register(NestExpressionNode.SupportedMethods, typeof(NestExpressionNode)); //register the "Explain" expression node parser customNodeTypeRegistry.Register(ExplainExpressionNode.SupportedMethods, typeof(ExplainExpressionNode)); //register the "UseKeys" expression node parser customNodeTypeRegistry.Register(UseKeysExpressionNode.SupportedMethods, typeof(UseKeysExpressionNode)); //This creates all the default node types var nodeTypeProvider = ExpressionTreeParser.CreateDefaultNodeTypeProvider(); //add custom node provider to the providers nodeTypeProvider.InnerProviders.Add(customNodeTypeRegistry); var transformerRegistry = ExpressionTransformerRegistry.CreateDefault(); var processor = ExpressionTreeParser.CreateDefaultProcessor(transformerRegistry); var expressionTreeParser = new ExpressionTreeParser(nodeTypeProvider, processor); var queryParser = new QueryParser(expressionTreeParser); return queryParser; }
public void Initialization_InjectExpressionTreeParser () { var expressionTreeParser = new ExpressionTreeParser (new MethodInfoBasedNodeTypeRegistry(), new NullExpressionTreeProcessor()); var queryParser = new QueryParser (expressionTreeParser); Assert.That (queryParser.ExpressionTreeParser, Is.SameAs (expressionTreeParser)); }
private SubQueryFindingExpressionTreeVisitor(INodeTypeProvider nodeTypeProvider) { ArgumentUtility.CheckNotNull ("nodeTypeProvider", nodeTypeProvider); _nodeTypeProvider = nodeTypeProvider; _expressionTreeParser = new ExpressionTreeParser (_nodeTypeProvider, new NullExpressionTreeProcessor()); _queryParser = new QueryParser (_expressionTreeParser); }
public MartenQueryParser() { var transformerRegistry = ExpressionTransformerRegistry.CreateDefault(); var processor = ExpressionTreeParser.CreateDefaultProcessor(transformerRegistry); var expressionTreeParser = new ExpressionTreeParser(MethodInfoBasedNodeTypeRegistry.CreateFromRelinqAssembly(), processor); _parser = new QueryParser(expressionTreeParser); }
static NhRelinqQueryParser() { var transformerRegistry = ExpressionTransformerRegistry.CreateDefault(); transformerRegistry.Register(new RemoveCharToIntConversion()); var processor = ExpressionTreeParser.CreateDefaultProcessor(transformerRegistry); // Add custom processors here: // processor.InnerProcessors.Add (new MyExpressionTreeProcessor()); var nodeTypeProvider = new NHibernateNodeTypeProvider(); var expressionTreeParser = new ExpressionTreeParser(nodeTypeProvider, processor); QueryParser = new QueryParser(expressionTreeParser); }
public MartenQueryParser(Action<MethodInfoBasedNodeTypeRegistry> registerNodeTypes = null) { var transformerRegistry = ExpressionTransformerRegistry.CreateDefault(); var processor = ExpressionTreeParser.CreateDefaultProcessor(transformerRegistry); var nodeTypeRegistry = MethodInfoBasedNodeTypeRegistry.CreateFromRelinqAssembly(); registerNodeTypes?.Invoke(nodeTypeRegistry); var expressionTreeParser = new ExpressionTreeParser(nodeTypeRegistry, processor); _parser = new QueryParser(expressionTreeParser); }
public void SetUp () { _queryParser = QueryParser.CreateDefault(); }