pub struct OutputStream {Show 15 fields
pub name: String,
pub kind: OutputKind,
pub ty: Type,
pub spawn: Spawn,
pub eval: Eval,
pub close: Close,
pub accesses: Vec<(StreamReference, Vec<(Origin, StreamAccessKind)>)>,
pub accessed_by: Vec<(StreamReference, Vec<(Origin, StreamAccessKind)>)>,
pub aggregated_by: Vec<(StreamReference, Origin, WindowReference)>,
pub aggregates: Vec<(StreamReference, Origin, WindowReference)>,
pub memory_bound: MemorizationBound,
pub layer: StreamLayers,
pub reference: StreamReference,
pub params: Vec<Parameter>,
pub tags: HashMap<String, Option<String>>,
}Expand description
Contains all information relevant to every kind of output stream.
Refer to TimeDrivenStream, EventDrivenStream, and Trigger, as well as their respective fields in the Mir for additional information.
Fields§
§name: StringThe name of the stream.
kind: OutputKindThe kind of the output (regular output or trigger)
ty: TypeThe value type of the stream.
spawn: SpawnInformation on the spawn behavior of the stream
eval: EvalInformation on the evaluation behavior of the stream
close: CloseThe condition under which the stream is supposed to be closed
accesses: Vec<(StreamReference, Vec<(Origin, StreamAccessKind)>)>The collection of streams this stream accesses non-transitively. Includes this stream’s spawn, evaluation condition, and close expressions.
accessed_by: Vec<(StreamReference, Vec<(Origin, StreamAccessKind)>)>The collection of streams that access the current stream non-transitively
aggregated_by: Vec<(StreamReference, Origin, WindowReference)>The collection of windows that access this stream non-transitively. This includes both sliding and discrete windows.
aggregates: Vec<(StreamReference, Origin, WindowReference)>The collection of windows that is accessed by this stream. This includes both sliding and discrete windows.
memory_bound: MemorizationBoundProvides the number of values of this stream’s type that need to be memorized. Refer to Type::size to get a type’s byte-size.
layer: StreamLayersProvides the evaluation of layer of this stream.
reference: StreamReferenceThe reference referring to this stream
params: Vec<Parameter>The parameters of a parameterized output stream; The vector is empty in non-parametrized streams
The tags annotated to this stream.
Trait Implementations§
Source§impl Clone for OutputStream
impl Clone for OutputStream
Source§fn clone(&self) -> OutputStream
fn clone(&self) -> OutputStream
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for OutputStream
impl Debug for OutputStream
Source§impl<'de> Deserialize<'de> for OutputStream
impl<'de> Deserialize<'de> for OutputStream
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for OutputStream
impl PartialEq for OutputStream
Source§impl Serialize for OutputStream
impl Serialize for OutputStream
Source§impl Stream for OutputStream
impl Stream for OutputStream
Source§fn spawn_layer(&self) -> Layer
fn spawn_layer(&self) -> Layer
Source§fn eval_layer(&self) -> Layer
fn eval_layer(&self) -> Layer
Source§fn is_parameterized(&self) -> bool
fn is_parameterized(&self) -> bool
Source§fn is_spawned(&self) -> bool
fn is_spawned(&self) -> bool
Source§fn is_eval_filtered(&self) -> bool
fn is_eval_filtered(&self) -> bool
Source§fn values_to_memorize(&self) -> MemorizationBound
fn values_to_memorize(&self) -> MemorizationBound
Source§fn as_stream_ref(&self) -> StreamReference
fn as_stream_ref(&self) -> StreamReference
Source§fn accessed_by(
&self,
) -> &Vec<(StreamReference, Vec<(Origin, StreamAccessKind)>)>
fn accessed_by( &self, ) -> &Vec<(StreamReference, Vec<(Origin, StreamAccessKind)>)>
Source§fn aggregated_by(&self) -> &[(StreamReference, Origin, WindowReference)]
fn aggregated_by(&self) -> &[(StreamReference, Origin, WindowReference)]
Source§fn aggregates(&self) -> &[(StreamReference, Origin, WindowReference)]
fn aggregates(&self) -> &[(StreamReference, Origin, WindowReference)]
impl StructuralPartialEq for OutputStream
Auto Trait Implementations§
impl Freeze for OutputStream
impl RefUnwindSafe for OutputStream
impl Send for OutputStream
impl Sync for OutputStream
impl Unpin for OutputStream
impl UnwindSafe for OutputStream
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more