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§
sourcefn stream_type(&self, sr: StreamReference) -> StreamType
fn stream_type(&self, sr: StreamReference) -> StreamType
Returns the StreamType of the given stream
§Panic
The function panics if the StreamReference is invalid.
sourcefn is_periodic(&self, sr: StreamReference) -> bool
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.
sourcefn is_event(&self, sr: StreamReference) -> bool
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.
sourcefn expr_type(&self, eid: ExprId) -> StreamType
fn expr_type(&self, eid: ExprId) -> StreamType
sourcefn get_parameter_type(
&self,
sr: StreamReference,
idx: usize,
) -> ConcreteValueType
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.
sourcefn eval_pacing_type(
&self,
sr: StreamReference,
idx: usize,
) -> ConcretePacingType
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.