Insert a MIR object to compute, bound to `id`. `expr` is wrapped via [`OptimizedMirRelationExpr::declare_optimized`]; the caller is responsible for any optimization (see the type-level contract). The object's relation type is recorded so a later [`Self::export_index`] over `id` can derive its `on_type`.
(&mut self, id: GlobalId, expr: MirRelationExpr)
| 279 | /// object's relation type is recorded so a later [`Self::export_index`] over `id` |
| 280 | /// can derive its `on_type`. |
| 281 | pub fn build(&mut self, id: GlobalId, expr: MirRelationExpr) -> &mut Self { |
| 282 | self.types.insert(id, expr.typ()); |
| 283 | self.mir |
| 284 | .insert_plan(id, OptimizedMirRelationExpr::declare_optimized(expr)); |
| 285 | self |
| 286 | } |
| 287 | |
| 288 | /// Export an index `index_id` arranging `on_id` by `key_cols`. |
| 289 | /// |