protected internal AbstractExpression(IScope scope, IExpressionConfigurationVisitor visitor) { if (scope != null) { Scope = scope; } Visitor = visitor; }
public Scope(IScope scope, IExpressionConfigurationVisitor visitor) : base(scope, visitor) { VariablesStore = new Dictionary<string, Variable>(); if (scope != null) { ParentScope = scope; RootScope = ParentScope.RootScope; } }
public static Expression Invoke(InvokeExpressionConfiguration configuration, IScope scope, IExpressionConfigurationVisitor visitor) { return new InvokeExpressionReader(configuration, scope, visitor); }
internal abstract Expression Accept(IScope scope, IExpressionConfigurationVisitor visitor);
public static Expression Parameter(ParameterExpressionConfiguration configuration, IScope scope, IExpressionConfigurationVisitor visitor) { return new ParameterExpressionReader(configuration, scope, visitor); }
public static Expression Default(DefaultExpressionConfiguration configuration, IScope scope, IExpressionConfigurationVisitor visitor) { return new DefaultExpressionReader(configuration, scope, visitor); }
public static Expression New(NewExpressionConfiguration configuration, IScope scope, IExpressionConfigurationVisitor visitor) { return new NewExpressionReader(configuration, scope, visitor); }
public static Expression Lambda(LambdaExpressionConfiguration configuration, IScope scope, IExpressionConfigurationVisitor visitor) { return new LambdaExpressionReader(configuration, scope, visitor); }
internal DefaultExpressionReader(DefaultExpressionConfiguration configuration, IScope scope, IExpressionConfigurationVisitor visitor) : base(scope, visitor) { _configuration = configuration; ReadConfiguration(configuration); }
internal ParameterExpressionReader(ParameterExpressionConfiguration configuration, IScope scope, IExpressionConfigurationVisitor visitor) : base(scope, visitor) { _configuration = configuration; ReadConfiguration(configuration); }
internal override Expression Accept(IScope scope, IExpressionConfigurationVisitor visitor) { return visitor.Visit(scope, this); }