pub struct CastColumnsPolicy {
pub integer_upcast: bool,
pub float_upcast: bool,
pub float_downcast: bool,
pub datetime_nanoseconds_downcast: bool,
pub datetime_microseconds_downcast: bool,
pub datetime_convert_timezone: bool,
pub missing_struct_fields: MissingColumnsPolicy,
pub extra_struct_fields: ExtraColumnsPolicy,
}
Expand description
Used by scans.
Fields§
§integer_upcast: bool
Allow casting when target dtype is lossless supertype
float_upcast: bool
Allow Float32 -> Float64
float_downcast: bool
Allow Float64 -> Float32
datetime_nanoseconds_downcast: bool
Allow datetime[ns] to be casted to any lower precision. Important for being able to read datasets written by spark.
datetime_microseconds_downcast: bool
Allow datetime[us] to datetime[ms]
datetime_convert_timezone: bool
Allow casting to change time units.
missing_struct_fields: MissingColumnsPolicy
§extra_struct_fields: ExtraColumnsPolicy
Implementations§
Source§impl CastColumnsPolicy
impl CastColumnsPolicy
Sourcepub const ERROR_ON_MISMATCH: CastColumnsPolicy
pub const ERROR_ON_MISMATCH: CastColumnsPolicy
Configuration variant that defaults to raising on mismatch.
Source§impl CastColumnsPolicy
impl CastColumnsPolicy
Sourcepub fn should_cast_column(
&self,
column_name: &str,
target_dtype: &DataType,
incoming_dtype: &DataType,
) -> Result<bool, PolarsError>
pub fn should_cast_column( &self, column_name: &str, target_dtype: &DataType, incoming_dtype: &DataType, ) -> Result<bool, PolarsError>
Checks if casting can be done to a dtype with a configured policy.
§Returns
- Ok(true): Cast needed to target dtype
- Ok(false): No casting needed
- Err(_): Forbidden by configuration, or incompatible types.
Trait Implementations§
Source§impl Clone for CastColumnsPolicy
impl Clone for CastColumnsPolicy
Source§fn clone(&self) -> CastColumnsPolicy
fn clone(&self) -> CastColumnsPolicy
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 CastColumnsPolicy
impl Debug for CastColumnsPolicy
Source§impl Default for CastColumnsPolicy
impl Default for CastColumnsPolicy
Source§fn default() -> CastColumnsPolicy
fn default() -> CastColumnsPolicy
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for CastColumnsPolicy
impl<'de> Deserialize<'de> for CastColumnsPolicy
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<CastColumnsPolicy, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<CastColumnsPolicy, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Hash for CastColumnsPolicy
impl Hash for CastColumnsPolicy
Source§impl PartialEq for CastColumnsPolicy
impl PartialEq for CastColumnsPolicy
Source§impl Serialize for CastColumnsPolicy
impl Serialize for CastColumnsPolicy
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl Eq for CastColumnsPolicy
impl StructuralPartialEq for CastColumnsPolicy
Auto Trait Implementations§
impl Freeze for CastColumnsPolicy
impl RefUnwindSafe for CastColumnsPolicy
impl Send for CastColumnsPolicy
impl Sync for CastColumnsPolicy
impl Unpin for CastColumnsPolicy
impl UnwindSafe for CastColumnsPolicy
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§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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