Class MetricsPlanExtensions
Inheritance
MetricsPlanExtensions
Assembly: MetricSetTransformers.dll
public static class MetricsPlanExtensions
Methods
View Source
Return the first base table for this metric plan
Declaration
public static Table BaseTable(this MetricsPlan plan)
Parameters
Returns
Type |
Description |
Table |
Base table.
|
View Source
Returns all the tables before the first Aggregation tables.
Declaration
public static IEnumerable<Table> BaseTables(this MetricsPlan plan)
Parameters
Returns
View Source
Declaration
public static MetricsPlan Clone(this MetricsPlan plan, MetricSetMetadata metadata, IMetricsPlanValidator validator)
Parameters
Returns
View Source
Declaration
public static MetricsPlan Clone(this MetricsPlan plan, IEnumerable<Expression> expressions, IMetricsPlanValidator validator)
Parameters
Returns
View Source
Declaration
public static MetricsPlan Clone(this MetricsPlan plan, IEnumerable<Expression> expressions, IEnumerable<Table> tables, IMetricsPlanValidator validator)
Parameters
Returns
View Source
Clone a MetricsPlan, only replacing its collection of "References"/>
nodes, and preserving everything else.
Declaration
public static MetricsPlan Clone(this MetricsPlan plan, IReadOnlyDictionary<string, MemoryStream> references, IMetricsPlanValidator validator)
Parameters
Returns
View Source
Declaration
public static MetricsPlan Clone(this MetricsPlan plan, string metricsetVersion)
Parameters
Returns
View Source
Finds all experiment unit Table's.
Declaration
public static IEnumerable<Table> ExperimentUnitTables(this MetricsPlan plan)
Parameters
Returns
View Source
Declaration
public static IEnumerable<Expression> LeafExpressions(this MetricsPlan plan)
Parameters
Returns
View Source
Return Tables that are not parents of other tables, meaning no
Table references them.
Declaration
public static IEnumerable<Table> LeafTables(this MetricsPlan plan)
Parameters
Returns
View Source
Declaration
public static IEnumerable<ColumnReference> Metrics(this MetricsPlan plan)
Parameters
Returns
View Source
All Table nodes in plan
of type T
.
Declaration
public static IReadOnlyList<T> Tables<T>(this MetricsPlan plan)
where T : Table
Parameters
Returns
Type Parameters
View Source
Finds all Table's at the experiment unit level.
Declaration
public static IEnumerable<Table> TablesAtExperimentUnitLevel(this MetricsPlan plan)
Parameters
Returns
View Source
Produce a dictionary mapping a metric table to the collection
of expressions which lie in that metric table.
Declaration
public static IReadOnlyDictionary<Table, ISet<Expression>> TableToExpressionMapping(this MetricsPlan plan)
Parameters
Returns
View Source
Declaration
public static Table TopExperimentUnitTable(this MetricsPlan plan)
Parameters
Returns
View Source
Declaration
public static bool TryFindTimestampColumn(this MetricsPlan plan, out ColumnReference timestampColumn)
Parameters
Returns
View Source
Declaration
public static bool TryFindUnique<T>(this MetricsPlan plan, out ColumnReference column)
where T : class, IExpressionMetadata
Parameters
Returns
Type Parameters
View Source
Declaration
public static bool TryFindVariantColumn(this MetricsPlan plan, out ColumnReference variantColumn)
Parameters
Returns
View Source
Transform a MetricsPlan using the provided set of operations
on Table and then Expression nodes, in that
order. Any operation not provided will be replaced with a no-op.
Declaration
public static MetricsPlan With(this MetricsPlan metricsPlan, IMetricsPlanValidator validator, Func<Aggregation, Table> aggregation = null, Func<DataSource, Table> dataSource = null, Func<ExternTable, Table> externTable = null, Func<Join, Table> join = null, Func<TableReference, Table> tableReference = null, Func<Union, Table> union = null, Func<Aggregand, Expression> aggregand = null, Func<BinaryAggregation, Expression> binaryAggregation = null, Func<BinaryOperation, Expression> binaryOperation = null, Func<ColumnReference, Expression> columnReference = null, Func<DataSourceColumn, Expression> dataSourceColumn = null, Func<Extern, Expression> extern = null, Func<Filter, Expression> filter = null, Func<JoinKey, Expression> joinKey = null, Func<Literal, Expression> literal = null, Func<TernaryOperation, Expression> ternaryOperation = null, Func<UnaryAggregation, Expression> unaryAggregation = null, Func<UnaryOperation, Expression> unaryOperation = null, Func<UnionExpression, Expression> unionExpression = null, Func<VectorOperation, Expression> vectorOperation = null, Func<UnaryWindowFunction, Expression> unaryWindowFunction = null)
Parameters
Type |
Name |
Description |
MetricsPlan |
metricsPlan |
|
IMetricsPlanValidator |
validator |
|
Func<Aggregation, Table> |
aggregation |
|
Func<DataSource, Table> |
dataSource |
|
Func<ExternTable, Table> |
externTable |
|
Func<Join, Table> |
join |
|
Func<TableReference, Table> |
tableReference |
|
Func<Union, Table> |
union |
|
Func<Aggregand, Expression> |
aggregand |
|
Func<BinaryAggregation, Expression> |
binaryAggregation |
|
Func<BinaryOperation, Expression> |
binaryOperation |
|
Func<ColumnReference, Expression> |
columnReference |
|
Func<DataSourceColumn, Expression> |
dataSourceColumn |
|
Func<Extern, Expression> |
extern |
|
Func<Filter, Expression> |
filter |
|
Func<JoinKey, Expression> |
joinKey |
|
Func<Literal, Expression> |
literal |
|
Func<TernaryOperation, Expression> |
ternaryOperation |
|
Func<UnaryAggregation, Expression> |
unaryAggregation |
|
Func<UnaryOperation, Expression> |
unaryOperation |
|
Func<UnionExpression, Expression> |
unionExpression |
|
Func<VectorOperation, Expression> |
vectorOperation |
|
Func<UnaryWindowFunction, Expression> |
unaryWindowFunction |
|
Returns
View Source
Clone a MetricsPlan, unioning its collection of Expression nodes
with newExpressions
, but keeping everything else the same.
Declaration
public static MetricsPlan WithAddedExpressions(this MetricsPlan metricsPlan, IEnumerable<Expression> newExpressions, IMetricsPlanValidator validator)
Parameters
Returns
View Source
Clone a MetricsPlan, unioning its collection of Expression nodes
with newExpressions
, but keeping everything else the same.
Declaration
public static MetricsPlan WithAddedResources(this MetricsPlan metricsPlan, IDictionary<string, MemoryStream> additionalResources, IMetricsPlanValidator validator)
Parameters
Returns
View Source
Clone a MetricsPlan, unioning its collection of Expression nodes
with newExpressions
, and its collection of Tables with
newTables
, but keeping everything else the same.
Declaration
public static MetricsPlan WithAddedTablesAndExpressions(this MetricsPlan metricsPlan, IEnumerable<Expression> newExpressions, IEnumerable<Table> newTables, IMetricsPlanValidator validator)
Parameters
Returns