1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
use crate::physical_plan::state::ExecutionState;
use crate::prelude::*;
use polars_core::prelude::*;
pub(crate) struct ExplodeExec {
pub(crate) input: Box<dyn Executor>,
pub(crate) columns: Vec<String>,
}
impl Executor for ExplodeExec {
fn execute(&mut self, state: &ExecutionState) -> Result<DataFrame> {
let df = self.input.execute(state)?;
df.explode(&self.columns)
}
}