Module rtlola_frontend::mir

source ·
Expand description

This module covers the Mid-Level Intermediate Representation (MIR) of an RTLola specification.

The RtLolaMir is specifically designed to allow convenient navigation and access to data. Hence, it is perfect for working with the specification rather than work on it.

Most Notable Structs and Enums

  • RtLolaMir is the root data structure representing the specification.
  • OutputStream 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 InputStream.
  • StreamReference used for referencing streams within the Mir.
  • Spawn and Close contain all information regarding the parametrization, spawning and closing behavior of streams.
  • Eval contains the information regarding the evaluation condition and the expression of the stream.
  • 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

Structs

Information on the close behavior of a stream
This struct represents a single deadline inside a Schedule.
Represents the dependency graph of the specification
Represents an instance of a discrete window
Information on the evaluation behavior of a stream
Wrapper for output streams providing additional information specific to event-based streams.
Represents an expression
Contains all information inherent to an input stream.
Represents a layer indicating the position when an expression can be evaluated
Contains all information relevant to every kind of output stream.
Information of a parameter of a parametrized output stream
This struct constitutes the Mid-Level Intermediate Representation (MIR) of an RTLola specification.
A lightweight wrapper around the Mir to provide a Display implementation for Mir struct T.
A schedule for the periodic streams.
Represents an instance of a sliding window
Information on the spawn behavior of a stream
Wrapper to collect the layer when a stream instance is spawned and evaluated
Wrapper for output streams providing additional information specific to time-driven streams.
Wrapper for output streams that are in-fact triggers. Provides additional information specific to triggers.
The size of a specific value in bytes.

Enums

Representation of the activation condition of event-based entities such as streams or spawn conditions
Arithmetical and logical operations
Represents a constant value of a certain kind.
This enum contains all possible kinds of expressions and their relevant information.
This enum indicates how much memory is required to store a stream.
Offset used in the lookup expression
Represents an RTLola pacing type.
Representation of the different stream accesses
Allows for referencing a stream within the specification.
This enum represents the different tasks that have to be executed periodically.
Represents an RTLola value type. This does not including pacing information, for this refer to TimeDrivenStream and EventDrivenStream.
The Ast representation of the different aggregation functions
Allows for referencing a window instance.

Traits

A trait for any kind of stream.
A trait for any kind of window

Type Definitions

Allows for referencing an input stream within the specification.
Allows for referencing an output stream within the specification.
A type alias for references to triggers.