Show / Hide Table of Contents

Class ColumnReference

Reference to a named (computed) column in some table.

Inheritance
Object
Expression
Expression<ColumnReference, Table>
ColumnReference
Implements
IVisitable<IExpressionVisitor>
ICloneable<ColumnReference, Table, Expression>
ICloneable<Expression>
IDirectedAcyclicGraph<Expression>
Inherited Members
Expression<ColumnReference, Table>.Table
Expression<ColumnReference, Table>.Clone(Table, IReadOnlyList<Expression>)
Expression<ColumnReference, Table>.Clone(IReadOnlyList<Expression>)
Expression.Table
Expression.Clone(IReadOnlyList<Expression>)
Object.Equals(Object)
Object.Equals(Object, Object)
Object.GetHashCode()
Object.GetType()
Object.MemberwiseClone()
Object.ReferenceEquals(Object, Object)
Namespace: Mangrove.MetricSetSyntaxTree.ExpressionNodes
Assembly: MetricSetSyntaxTree.dll
Syntax
public class ColumnReference : Expression<ColumnReference, Table>, IVisitable<IExpressionVisitor>, ICloneable<ColumnReference, Table, Expression>, ICloneable<Expression>, IDirectedAcyclicGraph<Expression>
Remarks

For example, if a metric set contains a computed column called C := A + B, it would appear as a ColumnReference, with the expression A + B for the column expression.

Constructors

View Source

ColumnReference(DataSourceColumn)

Create a column reference wrapping a data source column.

Declaration
public ColumnReference(DataSourceColumn expr)
Parameters
Type Name Description
DataSourceColumn expr
View Source

ColumnReference(Table, String, Expression, IReadOnlyDictionary<String, String>)

Declaration
[JsonConstructor]
public ColumnReference(Table table, string columnName, Expression columnExpression, IReadOnlyDictionary<string, string> metadata = null)
Parameters
Type Name Description
Table table
String columnName
Expression columnExpression
IReadOnlyDictionary<String, String> metadata

Properties

View Source

ColumnExpression

Expression that this named column is defined to be.

Declaration
public Expression ColumnExpression { get; set; }
Property Value
Type Description
Expression
View Source

ColumnName

Name (within the table) of this column.

Declaration
public string ColumnName { get; }
Property Value
Type Description
String
View Source

Metadata

Unstructured metadata (e.g., "cache this" for a column) for this expression.

Declaration
public IReadOnlyDictionary<string, string> Metadata { get; }
Property Value
Type Description
IReadOnlyDictionary<String, String>
View Source

Parents

Declaration
[JsonIgnore]
public override IReadOnlyList<Expression> Parents { get; }
Property Value
Type Description
IReadOnlyList<Expression>
Overrides
Expression.Parents

Methods

View Source

Accept(IExpressionVisitor)

Declaration
public override void Accept(IExpressionVisitor visitor)
Parameters
Type Name Description
IExpressionVisitor visitor
Overrides
Expression.Accept(IExpressionVisitor)
View Source

Clone(Table, IReadOnlyList<Expression>)

Declaration
public override ColumnReference Clone(Table table, IReadOnlyList<Expression> parents)
Parameters
Type Name Description
Table table
IReadOnlyList<Expression> parents
Returns
Type Description
ColumnReference
Overrides
Mangrove.MetricSetSyntaxTree.Expression<Mangrove.MetricSetSyntaxTree.ExpressionNodes.ColumnReference, Mangrove.MetricSetSyntaxTree.Table>.Clone(Mangrove.MetricSetSyntaxTree.Table, System.Collections.Generic.IReadOnlyList<Mangrove.MetricSetSyntaxTree.Expression>)
View Source

Clone(IReadOnlyDictionary<String, String>)

Declaration
public ColumnReference Clone(IReadOnlyDictionary<string, string> newMetadata)
Parameters
Type Name Description
IReadOnlyDictionary<String, String> newMetadata
Returns
Type Description
ColumnReference
View Source

Clone(String)

Declaration
public ColumnReference Clone(string newName)
Parameters
Type Name Description
String newName
Returns
Type Description
ColumnReference
View Source

ToString()

Declaration
public override string ToString()
Returns
Type Description
String
Overrides
Expression.ToString()

Implements

IVisitable<TVisitor>
ICloneable<TSubnode, TIdentifier, TNode>
ICloneable<T>
IDirectedAcyclicGraph<T>

Extension Methods

ExpressionExtensions.WrapUniqueName(Expression, String)
ExpressionExtensions.WrapName(Expression, String)
ExpressionExtensions.Unwrap(Expression, Boolean)
ExpressionExtensions.UnwrapParentheses(Expression)
ExpressionExtensions.NeedsColumnReferenceWrap(Expression)
ExpressionExtensions.TopParentsOfType<TParent>(Expression)
ExpressionExtensions.References(Expression, ISet<Table>)
ExpressionExtensions.TryGetMetadata<T>(ColumnReference, out T)
ExpressionExtensions.HasMetadata<T>(ColumnReference)
ExpressionExtensions.WithMetadata<T>(ColumnReference, T)
ExpressionExtensions.RemoveMetadata<T>(ColumnReference)
ExpressionExtensions.RevertName(ColumnReference)
ExpressionExtensions.AsPair(ColumnReference)
ExpressionExtensions.IsAggregation(Expression)
ExpressionExtensions.IsOperation(Expression)
ExpressionExtensions.IsConstant(Expression)
ExpressionExtensions.ResolvedName(ColumnReference)
ExpressionExtensions.Type(Expression)
ExpressionExtensions.IsOfNullableType(Expression)
ExpressionExtensions.IsOfNonNullableType(Expression)
IDirectedAcyclicGraphExtensions.Ancestors(Expression, Boolean)
IDirectedAcyclicGraphExtensions.Closure(Expression)
ObjectExtensions.EventId(Object)
  • View Source
Back to top Generated by DocFX