pub struct RtLolaAst {
    pub imports: Vec<Import>,
    pub constants: Vec<Rc<Constant>>,
    pub inputs: Vec<Rc<Input>>,
    pub outputs: Vec<Rc<Output>>,
    pub mirrors: Vec<Rc<Mirror>>,
    pub trigger: Vec<Rc<Trigger>>,
    pub type_declarations: Vec<TypeDeclaration>,
    pub next_node_id: RefCell<NodeId>,
}
Expand description

The root of a RTLola specification, consisting of stream and trigger declarations. Each declaration contains the id of the Ast node, a span, and declaration-specific components.

Ast Node Kinds

  • Import represents an import statement for a module.
  • Constant represents a constant stream.
  • Input represents an input stream.
  • Output represents an output stream.
  • Mirror represents mirror streams, a syntactic sugar for an output stream.
  • Trigger represents a trigger declaration.
  • TypeDeclaration captures a user given type declaration.
  • A NodeId is a unique identifier given to every node of the RtLolaAst
  • A Span links an Ast node to its code location.

Fields§

§imports: Vec<Import>

The imports of additional modules

§constants: Vec<Rc<Constant>>

The constant stream declarations

§inputs: Vec<Rc<Input>>

The input stream declarations

§outputs: Vec<Rc<Output>>

The output stream declarations

§mirrors: Vec<Rc<Mirror>>

The mirror stream declarations

§trigger: Vec<Rc<Trigger>>

The trigger declarations

§type_declarations: Vec<TypeDeclaration>

The user-defined type declarations

§next_node_id: RefCell<NodeId>

Next highest NodeId

Implementations§

Creates a deep clone of the Ast. I.e. clones the underlying data not the RCs.

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more
Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
Converts the given value to a String. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.