Trait rtlola_hir::hir::TypedTrait

source ·
pub trait TypedTrait {
    // Required methods
    fn stream_type(&self, sr: StreamReference) -> StreamType;
    fn is_periodic(&self, sr: StreamReference) -> bool;
    fn is_event(&self, sr: StreamReference) -> bool;
    fn expr_type(&self, eid: ExprId) -> StreamType;
    fn get_parameter_type(
        &self,
        sr: StreamReference,
        idx: usize,
    ) -> ConcreteValueType;
    fn eval_pacing_type(
        &self,
        sr: StreamReference,
        idx: usize,
    ) -> ConcretePacingType;
}
Expand description

Describes the functionality of a mode after checking and inferring types

Required Methods§

source

fn stream_type(&self, sr: StreamReference) -> StreamType

Returns the StreamType of the given stream

§Panic

The function panics if the StreamReference is invalid.

source

fn is_periodic(&self, sr: StreamReference) -> bool

Returns true if the given stream has a periodic evaluation pacing

§Panic

The function panics if the StreamReference is invalid.

source

fn is_event(&self, sr: StreamReference) -> bool

Returns true if the given stream has a event-based evaluation pacing

§Panic

The function panics if the StreamReference is invalid.

source

fn expr_type(&self, eid: ExprId) -> StreamType

Returns the StreamType of the given expression

§Panic

The function panics if the ExprId is invalid.

source

fn get_parameter_type( &self, sr: StreamReference, idx: usize, ) -> ConcreteValueType

Returns the ConcreteValueType of the idx parameter of the sr stream template

§Panic

The function panics if the StreamReference or the index is invalid.

source

fn eval_pacing_type( &self, sr: StreamReference, idx: usize, ) -> ConcretePacingType

Returns the ConcretePacingType of the given stream

§Panic

The function panics if the StreamReference is invalid or the index of the eval clause is out of bounds.

Implementors§

source§

impl<T> TypedTrait for T
where T: TypedTraitWrapper,