Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
pola-rs
GitHub Repository: pola-rs/polars
Path: blob/main/crates/polars-plan/src/plans/optimizer/predicate_pushdown/rename.rs
7889 views
1
use polars_utils::pl_str::PlSmallStr;
2
3
use super::*;
4
5
pub(super) fn process_rename(
6
acc_predicates: &mut PlHashMap<PlSmallStr, ExprIR>,
7
expr_arena: &mut Arena<AExpr>,
8
existing: &[PlSmallStr],
9
new: &[PlSmallStr],
10
) {
11
let rename_map: PlHashMap<PlSmallStr, PlSmallStr> =
12
new.iter().cloned().zip(existing.iter().cloned()).collect();
13
14
if !rename_map.is_empty() {
15
for (_, expr_ir) in acc_predicates.iter_mut() {
16
map_column_references(expr_ir, expr_arena, &rename_map);
17
}
18
}
19
}
20
21