Struct polars_sql::function_registry::FunctionOptions
pub struct FunctionOptions {
pub collect_groups: ApplyOptions,
pub fmt_str: &'static str,
pub input_wildcard_expansion: bool,
pub returns_scalar: bool,
pub cast_to_supertypes: bool,
pub allow_rename: bool,
pub pass_name_to_apply: bool,
pub changes_length: bool,
pub check_lengths: UnsafeBool,
pub allow_group_aware: bool,
}
Fields§
§collect_groups: ApplyOptions
Collect groups to a list and apply the function over the groups. This can be important in aggregation context.
fmt_str: &'static str
§input_wildcard_expansion: bool
There can be two ways of expanding wildcards:
Say the schema is ‘a’, ‘b’ and there is a function f
. In this case, f('*')
can expand
to:
f('a', 'b')
f('a'), f('b')
Setting this to true, will lead to behavior 1.
This also accounts for regex expansion.
returns_scalar: bool
Automatically explode on unit length if it ran as final aggregation.
this is the case for aggregations like sum, min, covariance etc. We need to know this because we cannot see the difference between the following functions based on the output type and number of elements:
x: {1, 2, 3}
head_1(x) -> {1} sum(x) -> {4}
cast_to_supertypes: bool
§allow_rename: bool
§pass_name_to_apply: bool
§changes_length: bool
§check_lengths: UnsafeBool
§allow_group_aware: bool
Implementations§
§impl FunctionOptions
impl FunctionOptions
pub fn is_groups_sensitive(&self) -> bool
pub fn is_groups_sensitive(&self) -> bool
Any function that is sensitive to the number of elements in a group
- Aggregations
- Sorts
- Counts
pub fn check_lengths(&self) -> bool
Trait Implementations§
§impl Clone for FunctionOptions
impl Clone for FunctionOptions
§fn clone(&self) -> FunctionOptions
fn clone(&self) -> FunctionOptions
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 more§impl Debug for FunctionOptions
impl Debug for FunctionOptions
§impl Default for FunctionOptions
impl Default for FunctionOptions
§fn default() -> FunctionOptions
fn default() -> FunctionOptions
Returns the “default value” for a type. Read more
§impl Hash for FunctionOptions
impl Hash for FunctionOptions
§impl PartialEq for FunctionOptions
impl PartialEq for FunctionOptions
§fn eq(&self, other: &FunctionOptions) -> bool
fn eq(&self, other: &FunctionOptions) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Copy for FunctionOptions
impl Eq for FunctionOptions
impl StructuralPartialEq for FunctionOptions
Auto Trait Implementations§
impl Freeze for FunctionOptions
impl RefUnwindSafe for FunctionOptions
impl Send for FunctionOptions
impl Sync for FunctionOptions
impl Unpin for FunctionOptions
impl UnwindSafe for FunctionOptions
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 Q
impl<Q, K> Equivalent<K> for Q
§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 Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.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>
Converts
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>
Converts
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