reifydb_sdk/transform/context.rs
1// SPDX-License-Identifier: AGPL-3.0-or-later
2// Copyright (c) 2026 ReifyDB
3
4use reifydb_abi::context::context::ContextFFI;
5
6use crate::operator::builder::ColumnsBuilder;
7
8pub struct FFITransformContext {
9 pub(crate) ctx: *mut ContextFFI,
10}
11
12impl FFITransformContext {
13 pub fn new(ctx: *mut ContextFFI) -> Self {
14 assert!(!ctx.is_null(), "ContextFFI pointer must not be null");
15 Self {
16 ctx,
17 }
18 }
19
20 pub fn builder(&mut self) -> ColumnsBuilder<'_> {
21 ColumnsBuilder::from_raw_ctx(self.ctx)
22 }
23}