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: String
The name of the stream.
kind: OutputKind
The kind of the output (regular output or trigger)
ty: Type
The value type of the stream.
spawn: Spawn
Information on the spawn behavior of the stream
eval: Eval
Information on the evaluation behavior of the stream
close: Close
The 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: MemorizationBound
Provides 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: StreamLayers
Provides the evaluation of layer of this stream.
reference: StreamReference
The 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