polars_python/
datatypes.rs

1use polars::prelude::*;
2use polars_lazy::dsl;
3use pyo3::prelude::*;
4
5use crate::error::PyPolarsErr;
6use crate::{PyExpr, Wrap};
7
8#[pyfunction]
9pub fn _get_dtype_max(dt: Wrap<DataType>) -> PyResult<PyExpr> {
10    let v = dt.0.max().map_err(PyPolarsErr::from)?;
11    Ok(dsl::lit(v).into())
12}
13
14#[pyfunction]
15pub fn _get_dtype_min(dt: Wrap<DataType>) -> PyResult<PyExpr> {
16    let v = dt.0.min().map_err(PyPolarsErr::from)?;
17    Ok(dsl::lit(v).into())
18}
19
20#[pyfunction]
21pub fn _known_timezones() -> PyResult<Vec<String>> {
22    use polars_time::prelude::known_timezones;
23    Ok(known_timezones()
24        .iter()
25        .map(|tz| tz.to_string())
26        .collect::<Vec<_>>())
27}