Struct datafusion_expr::logical_plan::Projection
source · #[non_exhaustive]pub struct Projection {
pub expr: Vec<Expr>,
pub input: Arc<LogicalPlan>,
pub schema: DFSchemaRef,
}
Expand description
Evaluates an arbitrary list of expressions (essentially a SELECT with an expression list) on its input.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.expr: Vec<Expr>
The list of expressions
input: Arc<LogicalPlan>
The incoming logical plan
schema: DFSchemaRef
The schema description of the output
Implementations§
source§impl Projection
impl Projection
sourcepub fn try_new(expr: Vec<Expr>, input: Arc<LogicalPlan>) -> Result<Self>
pub fn try_new(expr: Vec<Expr>, input: Arc<LogicalPlan>) -> Result<Self>
Create a new Projection
sourcepub fn try_new_with_schema(
expr: Vec<Expr>,
input: Arc<LogicalPlan>,
schema: DFSchemaRef
) -> Result<Self>
pub fn try_new_with_schema( expr: Vec<Expr>, input: Arc<LogicalPlan>, schema: DFSchemaRef ) -> Result<Self>
Create a new Projection using the specified output schema
sourcepub fn new_from_schema(input: Arc<LogicalPlan>, schema: DFSchemaRef) -> Self
pub fn new_from_schema(input: Arc<LogicalPlan>, schema: DFSchemaRef) -> Self
Create a new Projection using the specified output schema
Trait Implementations§
source§impl Clone for Projection
impl Clone for Projection
source§fn clone(&self) -> Projection
fn clone(&self) -> Projection
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 Hash for Projection
impl Hash for Projection
source§impl PartialEq<Projection> for Projection
impl PartialEq<Projection> for Projection
source§fn eq(&self, other: &Projection) -> bool
fn eq(&self, other: &Projection) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Eq for Projection
impl StructuralEq for Projection
impl StructuralPartialEq for Projection
Auto Trait Implementations§
impl !RefUnwindSafe for Projection
impl Send for Projection
impl Sync for Projection
impl Unpin for Projection
impl !UnwindSafe for Projection
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
§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.