Class ChangeExpressions
General purpose "base visitor" for operations which potentially replace
one expression by another.
Inheritance
ChangeExpressions
Assembly: MetricSetTransformers.dll
public class ChangeExpressions : ChangeDag<Expression, Table, IExpressionVisitor>, IGenericExpressionVisitor<IEnumerable<Expression>>, IExpressionVisitor, IGenericVisitor<IEnumerable<Expression>>
Constructors
View Source
Declaration
public ChangeExpressions()
View Source
Change expressions by attempting to swap out their tables using newTables
.
If an expressions table does not live in newTables
, its table is left
unchanged.
Declaration
public ChangeExpressions(IDictionary<Table, Table> newTables)
Parameters
View Source
Change expressions by swapping out their tables using newTable
.
Declaration
public ChangeExpressions(Func<Expression, Table> newTable)
Parameters
Properties
View Source
New expressions created by calling this visitor (i.e. not replacements of any existing expressions).
Declaration
protected ISet<Expression> CreatedExpressions { get; }
Property Value
View Source
Declaration
public IEnumerable<Expression> Result { get; }
Property Value
Methods
View Source
Declaration
protected virtual Expression Change(Aggregand expr)
Parameters
Returns
View Source
Declaration
protected virtual Expression Change(BinaryAggregation expr)
Parameters
Returns
View Source
Declaration
protected virtual Expression Change(BinaryOperation expr)
Parameters
Returns
View Source
Declaration
protected virtual Expression Change(ColumnReference expr)
Parameters
Returns
View Source
Declaration
protected virtual Expression Change(DataSourceColumn expr)
Parameters
Returns
View Source
Declaration
protected virtual Expression Change(Extern expr)
Parameters
Type |
Name |
Description |
Extern |
expr |
|
Returns
View Source
Declaration
protected virtual Expression Change(Filter expr)
Parameters
Type |
Name |
Description |
Filter |
expr |
|
Returns
View Source
Declaration
protected virtual Expression Change(JoinKey expr)
Parameters
Returns
View Source
Declaration
protected virtual Expression Change(Literal expr)
Parameters
Returns
View Source
Declaration
protected virtual Expression Change(RuntimeVariable expr)
Parameters
Returns
View Source
Declaration
protected virtual Expression Change(TernaryOperation expr)
Parameters
Returns
View Source
Declaration
protected virtual Expression Change(UnaryAggregation expr)
Parameters
Returns
View Source
Declaration
protected virtual Expression Change(UnaryOperation expr)
Parameters
Returns
View Source
Declaration
protected virtual Expression Change(UnaryWindowFunction expr)
Parameters
Returns
View Source
Declaration
protected virtual Expression Change(UnionExpression expr)
Parameters
Returns
View Source
Declaration
protected virtual Expression Change(VectorOperation expr)
Parameters
Returns
View Source
Declaration
protected override Table ChangeIdentifier(Expression node)
Parameters
Returns
Overrides
Mangrove.MetricSetTransformers.Utilities.ChangeDag<Mangrove.MetricSetSyntaxTree.Expression, Mangrove.MetricSetSyntaxTree.Table, Mangrove.MetricSetSyntaxTree.IExpressionVisitor>.ChangeIdentifier(Mangrove.MetricSetSyntaxTree.Expression)
View Source
Declaration
protected override Table Identifier(Expression node)
Parameters
Returns
Overrides
Mangrove.MetricSetTransformers.Utilities.ChangeDag<Mangrove.MetricSetSyntaxTree.Expression, Mangrove.MetricSetSyntaxTree.Table, Mangrove.MetricSetSyntaxTree.IExpressionVisitor>.Identifier(Mangrove.MetricSetSyntaxTree.Expression)
View Source
Declaration
public virtual void Visit(Aggregand expr)
Parameters
View Source
Declaration
public virtual void Visit(BinaryAggregation expr)
Parameters
View Source
Declaration
public virtual void Visit(BinaryOperation expr)
Parameters
View Source
Declaration
public virtual void Visit(ColumnReference expr)
Parameters
View Source
Declaration
public virtual void Visit(DataSourceColumn expr)
Parameters
View Source
Declaration
public virtual void Visit(Extern expr)
Parameters
Type |
Name |
Description |
Extern |
expr |
|
View Source
Declaration
public virtual void Visit(Filter expr)
Parameters
Type |
Name |
Description |
Filter |
expr |
|
View Source
Declaration
public virtual void Visit(JoinKey expr)
Parameters
View Source
Declaration
public virtual void Visit(Literal expr)
Parameters
View Source
Declaration
public virtual void Visit(RuntimeVariable expr)
Parameters
View Source
Declaration
public virtual void Visit(TernaryOperation expr)
Parameters
View Source
Declaration
public virtual void Visit(UnaryAggregation expr)
Parameters
View Source
Declaration
public virtual void Visit(UnaryOperation expr)
Parameters
View Source
Declaration
public virtual void Visit(UnaryWindowFunction expr)
Parameters
View Source
Declaration
public virtual void Visit(UnionExpression expr)
Parameters
View Source
Declaration
public virtual void Visit(VectorOperation expr)
Parameters
Implements
Extension Methods