pub struct ProjectNode {
pub select_list: Vec<ExprNode>,
pub watermark_input_cols: Vec<u32>,
pub watermark_output_cols: Vec<u32>,
pub nondecreasing_exprs: Vec<u32>,
pub noop_update_hint: bool,
}
Fields§
§select_list: Vec<ExprNode>
§watermark_input_cols: Vec<u32>
this two field is expressing a list of usize pair, which means when project receives a
watermark with watermark_input_cols\[i\]
column index, it should derive a new watermark
with watermark_output_cols\[i\]
th expression
watermark_output_cols: Vec<u32>
§nondecreasing_exprs: Vec<u32>
§noop_update_hint: bool
Whether there are likely no-op updates in the output chunks, so that eliminating them with
StreamChunk::eliminate_adjacent_noop_update
could be beneficial.
Implementations§
source§impl ProjectNode
impl ProjectNode
pub fn get_select_list(&self) -> &Vec<ExprNode>
pub fn get_watermark_input_cols(&self) -> &Vec<u32>
pub fn get_watermark_output_cols(&self) -> &Vec<u32>
pub fn get_nondecreasing_exprs(&self) -> &Vec<u32>
pub fn get_noop_update_hint(&self) -> bool
Trait Implementations§
source§impl Clone for ProjectNode
impl Clone for ProjectNode
source§fn clone(&self) -> ProjectNode
fn clone(&self) -> ProjectNode
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for ProjectNode
impl Debug for ProjectNode
source§impl Default for ProjectNode
impl Default for ProjectNode
source§impl<'de> Deserialize<'de> for ProjectNode
impl<'de> Deserialize<'de> for ProjectNode
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>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Message for ProjectNode
impl Message for ProjectNode
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message to a buffer. Read more
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
Encodes the message to a newly allocated buffer.
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message with a length-delimiter to a buffer. Read more
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
Encodes the message with a length-delimiter to a newly allocated buffer.
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes an instance of the message from a buffer. Read more
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes an instance of the message from a buffer, and merges it into
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes a length-delimited instance of the message from buffer, and
merges it into
self
.source§impl PartialEq for ProjectNode
impl PartialEq for ProjectNode
source§impl Serialize for ProjectNode
impl Serialize for ProjectNode
impl StructuralPartialEq for ProjectNode
Auto Trait Implementations§
impl Freeze for ProjectNode
impl RefUnwindSafe for ProjectNode
impl Send for ProjectNode
impl Sync for ProjectNode
impl Unpin for ProjectNode
impl UnwindSafe for ProjectNode
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
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request