Show / Hide Table of Contents

Interface IParseableExpression

Representation of the information needed to parse a column or metric from a metric set.

Namespace: Mangrove.Parsing.Abstractions
Assembly: Mangrove.Parsing.dll
Syntax
public interface IParseableExpression
Remarks

Note: IParseableExpression objects do not have to be constructed from deserialized XML or YAML metric set files. For use in, e.g. a language server, they are easy to build in-memory from the contents of a text box.

Properties

View Source

Content

Raw string representation of the syntax defining this expression, e.g. Avg(a+b).

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

Extern

String representation of the ExternKind that this computation lives in.

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

Flag

Used to mark the following "tagged" expressions: DataSourceColumn, Filter, JoinKey, and Aggregand.

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

Imports

Namespaces (whether C# or Java / Scala) this expression needs.

Declaration
IReadOnlyList<string> Imports { get; }
Property Value
Type Description
IReadOnlyList<String>
View Source

Name

Name identifying this expression. Must be unique per Table.

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

ParsingDirectives

Any pragma-style directives (e.g. ignore specific warnings, or treat specific warnings as errors) for the parser to follow.

Declaration
IReadOnlyList<string> ParsingDirectives { get; }
Property Value
Type Description
IReadOnlyList<String>
View Source

Resources

The names of resources (DLLs, or JAR files) this expression needs.

Declaration
IReadOnlyList<string> Resources { get; }
Property Value
Type Description
IReadOnlyList<String>
View Source

Table

Optional name identifying the Table that this expression lives in. For most metric sets, this is the same as the name of the 'level' that this IParseableExpression is known to live at.

Declaration
string Table { get; }
Property Value
Type Description
String
Remarks

Every IParseableExpression must either be declared to live in some IParseableTable, or have an inferable IParseableTable. That means even metrics have to live in some kind of 'output' table.

View Source

Type

Type hint, if provided.

Declaration
string Type { get; set; }
Property Value
Type Description
String

Extension Methods

ObjectExtensions.EventId(Object)
  • View Source
Back to top Generated by DocFX