Expand description

This module covers the High-Level Intermediate Representation (HIR) of an RTLola specification.

The RtLolaHir is specifically designed to allow for convenient manipulation and analysis. Hence, it is perfect for working on the specification rather than work with it.

Most Notable Structs and Enums

  • RtLolaMir is the root data structure representing the specification.
  • Output represents a single output stream. The data structure is enriched with information regarding streams accessing it or accessed by it and much more. For input streams confer Input.
  • StreamReference used for referencing streams within the Mir.
  • Expression represents an expression. It contains its ExpressionKind and its type. The latter contains all information specific to a certain kind of expression such as sub-expressions of operators.

See Also

Modules

This module covers a variety of selectors to extract different kinds of output streams from the High-Level Intermediate Representation (HIR) of an RTLola specification.

Structs

Represents the first stage in the RtLolaHir(crate::RtLolaHir)

Represents the final mode.

The external definition of the stream pacing.

Represents the mode after the dependency analysis

Represents a discrete window aggregation

Represents the weights of the edges in the dependency graph

Representation of the Id of an Expression

Representation of an expression in the RtLolaHir.

Representation of an function call The struction contains all information for a function call in the ExpressionKind enum.

Represents the name of a function including its arguments.

Represents inlined constant values from constant streams

Represents an input stream in an RTLola specification.

Represents a layer indicating the position when an expression can be evaluated

Represents the mode after the memory analysis

Represents the mode after determining the evaluation order

Represents an output stream in an RTLola specification.

Represents a single parameter of a parametrized output stream.

This struct constitutes the Mid-Level Intermediate Representation (MIR) of an RTLola specification.

Represents a sliding window aggregation

Wrapper to collect the layer when a stream instance is spawned and evaluated

The external definition of the stream type.

Represents a trigger of an RTLola specification.

Represents the mode after the type checker call

Representation of the function call to widen the type of an Expression

Represents an instance of a sliding or a discrete window aggregation

Enums

The activation condition describes when an event-based stream produces a new value.

Contains all arithmetical and logical operations.

The external definition of a pacing type.

The external definition for a value type.

Represents a constant in the ExpressionKind enum of the RtLolaHir.

Represents the error of the dependency analysis

The kinds of an Expression of the RtLolaHir.

Represents a constant value of a certain kind.

This enum indicates how much memory is required to store a stream.

Offset used in the lookup expression

Represents the origin of a stream lookup

Representation of the different stream accesses

Allows for referencing a stream within the specification.

A TransformationErr describes the kind off error raised during the Ast to Hir conversion.

Allows for referencing a window instance.

Traits

Describes the functionality of a mode after analyzing the dependencies

Defines the functionality to progress one mode to the next one

Describes the functionality of a mode after computing the memory bounds

Describes the functionality of a mode after computing the evaluation order

Describes the functionality of a mode after checking and inferring types

Functionality of sliding window and discrete window aggregations

Type Definitions

Represents the Dependency Graph

Allows for referencing an input stream within the specification.

Allows for referencing an output stream within the specification.

The Hir Spawn definition is composed of two optional expressions. The first one refers to the spawn target while the second one represents the spawn condition.