pub struct HashJoinExecBuilder { /* private fields */ }Expand description
Helps to build HashJoinExec.
Builder can be created from an existing HashJoinExec using From::from.
In this case, all its fields are inherited. If a field that affects the node’s
properties is modified, they will be automatically recomputed during the build.
§Adding setters
When adding a new setter, it is necessary to ensure that the preserve_properties
flag is set to false if modifying the field requires a recomputation of the plan’s
properties.
Implementations§
Source§impl HashJoinExecBuilder
impl HashJoinExecBuilder
Sourcepub fn new(
left: Arc<dyn ExecutionPlan>,
right: Arc<dyn ExecutionPlan>,
on: Vec<(PhysicalExprRef, PhysicalExprRef)>,
join_type: JoinType,
) -> Self
pub fn new( left: Arc<dyn ExecutionPlan>, right: Arc<dyn ExecutionPlan>, on: Vec<(PhysicalExprRef, PhysicalExprRef)>, join_type: JoinType, ) -> Self
Make a new HashJoinExecBuilder.
Sourcepub fn with_projection(self, projection: Option<Vec<usize>>) -> Self
pub fn with_projection(self, projection: Option<Vec<usize>>) -> Self
Set projection from the vector.
Sourcepub fn with_projection_ref(self, projection: Option<ProjectionRef>) -> Self
pub fn with_projection_ref(self, projection: Option<ProjectionRef>) -> Self
Set projection from the shared reference.
Sourcepub fn with_filter(self, filter: Option<JoinFilter>) -> Self
pub fn with_filter(self, filter: Option<JoinFilter>) -> Self
Set optional filter.
Sourcepub fn with_on(self, on: Vec<(PhysicalExprRef, PhysicalExprRef)>) -> Self
pub fn with_on(self, on: Vec<(PhysicalExprRef, PhysicalExprRef)>) -> Self
Set expressions to join on.
Sourcepub fn with_partition_mode(self, mode: PartitionMode) -> Self
pub fn with_partition_mode(self, mode: PartitionMode) -> Self
Set partition mode.
Sourcepub fn with_null_equality(self, null_equality: NullEquality) -> Self
pub fn with_null_equality(self, null_equality: NullEquality) -> Self
Set null equality property.
Sourcepub fn with_null_aware(self, null_aware: bool) -> Self
pub fn with_null_aware(self, null_aware: bool) -> Self
Set null aware property.
Sourcepub fn with_fetch(self, fetch: Option<usize>) -> Self
pub fn with_fetch(self, fetch: Option<usize>) -> Self
Set fetch property.
Sourcepub fn recompute_properties(self) -> Self
pub fn recompute_properties(self) -> Self
Require to recompute plan properties.
Sourcepub fn with_new_children(
self,
children: Vec<Arc<dyn ExecutionPlan>>,
) -> Result<Self>
pub fn with_new_children( self, children: Vec<Arc<dyn ExecutionPlan>>, ) -> Result<Self>
Replace children.
Sourcepub fn reset_state(self) -> Self
pub fn reset_state(self) -> Self
Reset runtime state.
Sourcepub fn build_exec(self) -> Result<Arc<dyn ExecutionPlan>>
pub fn build_exec(self) -> Result<Arc<dyn ExecutionPlan>>
Build result as a dyn execution plan.
Sourcepub fn build(self) -> Result<HashJoinExec>
pub fn build(self) -> Result<HashJoinExec>
Build resulting execution plan.
Trait Implementations§
Source§impl From<&HashJoinExec> for HashJoinExecBuilder
impl From<&HashJoinExec> for HashJoinExecBuilder
Source§fn from(exec: &HashJoinExec) -> Self
fn from(exec: &HashJoinExec) -> Self
Auto Trait Implementations§
impl !Freeze for HashJoinExecBuilder
impl !RefUnwindSafe for HashJoinExecBuilder
impl Send for HashJoinExecBuilder
impl Sync for HashJoinExecBuilder
impl Unpin for HashJoinExecBuilder
impl UnsafeUnpin for HashJoinExecBuilder
impl !UnwindSafe for HashJoinExecBuilder
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> 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