public LinqExtensionMethodCallExpressionProcessor(IExpressionProcessorPipeline expressionProcessorPipeline) { if (expressionProcessorPipeline == null) { throw new ArgumentNullException(nameof(expressionProcessorPipeline)); } expressionProcessors = new List <IExpressionProcessor <MethodCallExpression> > { new LinqAnyExtensionMethodCallExpressionProcessor(expressionProcessorPipeline) }; }
public MethodCallExpressionProcessor(IExpressionProcessorPipeline expressionProcessorPipeline) { if (expressionProcessorPipeline == null) { throw new ArgumentNullException(nameof(expressionProcessorPipeline)); } // TODO: Consider LINQ extension methods as well! expressionProcessors = new List <IExpressionProcessor <MethodCallExpression> > { new ObjectMethodCallExpressionProcessor(expressionProcessorPipeline), new IntegralTypesMethodCallExpressionProcessor(expressionProcessorPipeline), new StringMethodCallExpressionProcessor(expressionProcessorPipeline), new LinqExtensionMethodCallExpressionProcessor(expressionProcessorPipeline), }; }
// TODO: Handle properties which require special treatment, such as: // - DateTime(Offset).(Year|Month|Day|Hour|Minute|Second|Millisecond|etc.) public MemberExpressionProcessor(IExpressionProcessorPipeline expressionProcessorPipeline) { if (expressionProcessorPipeline == null) { throw new ArgumentNullException(nameof(expressionProcessorPipeline)); } // TODO: Consider LINQ extension methods as well! expressionProcessors = new List <IExpressionProcessor <MemberExpression> > { new StringMemberExpressionProcessor(expressionProcessorPipeline), new NullableMemberExpressionProcessor(expressionProcessorPipeline), // This must come before CollectionCountMemberExpressionProcessor new DictionaryMemberExpressionProcessor(expressionProcessorPipeline), new CollectionCountMemberExpressionProcessor(expressionProcessorPipeline), // This must be the last one, otherwise this will wrongly return the specially treated ones as well! new HandleAllMemberExpressionProcessor(expressionProcessorPipeline) }; }
public IntegralTypesMethodCallExpressionProcessor(IExpressionProcessorPipeline expressionProcessorPipeline) { _expressionProcessorPipeline = expressionProcessorPipeline ?? throw new ArgumentNullException(nameof(expressionProcessorPipeline)); }
public HandleAllMemberExpressionProcessor(IExpressionProcessorPipeline expressionProcessorPipeline) { _expressionProcessorPipeline = expressionProcessorPipeline ?? throw new ArgumentNullException(nameof(expressionProcessorPipeline)); }
public LinqAnyExtensionMethodCallExpressionProcessor(IExpressionProcessorPipeline expressionProcessorPipeline) { _expressionProcessorPipeline = expressionProcessorPipeline ?? throw new ArgumentNullException(nameof(expressionProcessorPipeline)); }
public ConditionalExpressionProcessor(IExpressionProcessorPipeline expressionProcessorPipeline) { _expressionProcessorPipeline = expressionProcessorPipeline ?? throw new ArgumentNullException(nameof(expressionProcessorPipeline)); }
public PatchScriptConditionBuilder(IExpressionProcessorPipeline expressionProcessorPipeline) { _expressionProcessorPipeline = expressionProcessorPipeline ?? throw new ArgumentNullException(nameof(expressionProcessorPipeline)); }
public PatchScriptBuilder(IExpressionProcessorPipeline expressionProcessorPipeline, IPatchScriptConditionBuilder patchScriptConditionBuilder, IPatchScriptBodyBuilder patchScriptBodyBuilder) { _expressionProcessorPipeline = expressionProcessorPipeline ?? throw new ArgumentNullException(nameof(expressionProcessorPipeline)); _patchScriptConditionBuilder = patchScriptConditionBuilder ?? throw new ArgumentNullException(nameof(patchScriptConditionBuilder)); _patchScriptBodyBuilder = patchScriptBodyBuilder ?? throw new ArgumentNullException(nameof(patchScriptBodyBuilder)); }
public CollectionCountMemberExpressionProcessor(IExpressionProcessorPipeline expressionProcessorPipeline) { _expressionProcessorPipeline = expressionProcessorPipeline ?? throw new ArgumentNullException(nameof(expressionProcessorPipeline)); }
public void Setup() { expressionProcessorPipeline = ExpressionProcessorPipelineFactory.CreateExpressionProcessorPipeline(); }