diff --git a/crates/nu_plugin_polars/src/dataframe/values/mod.rs b/crates/nu_plugin_polars/src/dataframe/values/mod.rs index fec45fe1bb..c3db22db19 100644 --- a/crates/nu_plugin_polars/src/dataframe/values/mod.rs +++ b/crates/nu_plugin_polars/src/dataframe/values/mod.rs @@ -6,6 +6,7 @@ mod nu_lazygroupby; mod nu_schema; mod nu_when; pub mod utils; +mod nu_dtype; use crate::{Cacheable, PolarsPlugin}; use nu_plugin::EngineInterface; @@ -21,6 +22,7 @@ pub use nu_expression::{NuExpression, NuExpressionCustomValue}; pub use nu_lazyframe::{NuLazyFrame, NuLazyFrameCustomValue}; pub use nu_lazygroupby::{NuLazyGroupBy, NuLazyGroupByCustomValue}; pub use nu_schema::{str_to_dtype, NuSchema}; +pub use nu_dtype::NuDataType; pub use nu_when::{NuWhen, NuWhenCustomValue, NuWhenType}; #[derive(Debug, Clone)] diff --git a/crates/nu_plugin_polars/src/dataframe/values/nu_dtype.rs b/crates/nu_plugin_polars/src/dataframe/values/nu_dtype.rs new file mode 100644 index 0000000000..7ece475319 --- /dev/null +++ b/crates/nu_plugin_polars/src/dataframe/values/nu_dtype.rs @@ -0,0 +1,18 @@ +use nu_protocol::{ShellError, Span}; +use polars::prelude::{DataType, UnknownKind}; + +#[derive(Debug, Clone)] +pub struct NuDataType { + dtype: DataType, +} + +impl NuDataType { + pub fn new(dtype: DataType) -> Self { + Self { dtype } + } + + pub fn to_polars(&self) -> DataType { + self.dtype.clone() + } +} +