Path: blob/main/crates/polars-ops/src/series/ops/reinterpret.rs
6939 views
use polars_core::prelude::*;12pub fn reinterpret(s: &Series, signed: bool) -> PolarsResult<Series> {3Ok(match (s.dtype(), signed) {4(DataType::UInt64, true) => s.u64().unwrap().reinterpret_signed().into_series(),5(DataType::UInt64, false) => s.clone(),6(DataType::Int64, false) => s.i64().unwrap().reinterpret_unsigned().into_series(),7(DataType::Int64, true) => s.clone(),8(DataType::UInt32, true) => s.u32().unwrap().reinterpret_signed().into_series(),9(DataType::UInt32, false) => s.clone(),10(DataType::Int32, false) => s.i32().unwrap().reinterpret_unsigned().into_series(),11(DataType::Int32, true) => s.clone(),12_ => polars_bail!(13ComputeError:14"reinterpret is only allowed for 64-bit/32-bit integers types, use cast otherwise"15),16})17}181920