Sha256: a61bb9cdfdb0f86e8cf2fa0a2c6011d5c535e10a518d8502b51bd2d2f752cd80

Contents?: true

Size: 650 Bytes

Versions: 6

Compression:

Stored size: 650 Bytes

Contents

mod array;
mod binary;
mod categorical;
mod datetime;
mod general;
mod list;
mod meta;
mod name;
mod rolling;
mod string;
mod r#struct;

use magnus::{prelude::*, RArray};
use polars::lazy::dsl::Expr;

use crate::RbResult;

#[magnus::wrap(class = "Polars::RbExpr")]
#[derive(Clone)]
pub struct RbExpr {
    pub inner: Expr,
}

impl From<Expr> for RbExpr {
    fn from(inner: Expr) -> Self {
        RbExpr { inner }
    }
}

pub fn rb_exprs_to_exprs(rb_exprs: RArray) -> RbResult<Vec<Expr>> {
    let mut exprs = Vec::new();
    for item in rb_exprs.into_iter() {
        exprs.push(<&RbExpr>::try_convert(item)?.inner.clone());
    }
    Ok(exprs)
}

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
polars-df-0.17.0 ext/polars/src/expr/mod.rs
polars-df-0.16.0 ext/polars/src/expr/mod.rs
polars-df-0.15.0 ext/polars/src/expr/mod.rs
polars-df-0.14.0 ext/polars/src/expr/mod.rs
polars-df-0.13.0 ext/polars/src/expr/mod.rs
polars-df-0.12.0 ext/polars/src/expr/mod.rs