MCPcopy Create free account
hub / github.com/apache/datafusion / clone_fn_wrapper

Function clone_fn_wrapper

datafusion/ffi/src/session/mod.rs:300–329  ·  view source on GitHub ↗
(provider: &FFI_SessionRef)

Source from the content-addressed store, hash-verified

298}
299
300unsafe extern "C" fn clone_fn_wrapper(provider: &FFI_SessionRef) -> FFI_SessionRef {
301 unsafe {
302 let old_private_data = provider.private_data as *const SessionPrivateData;
303
304 let private_data = Box::into_raw(Box::new(SessionPrivateData {
305 session: (*old_private_data).session,
306 runtime: (*old_private_data).runtime.clone(),
307 })) as *mut c_void;
308
309 FFI_SessionRef {
310 session_id: session_id_fn_wrapper,
311 config: config_fn_wrapper,
312 create_physical_plan: create_physical_plan_fn_wrapper,
313 create_physical_expr: create_physical_expr_fn_wrapper,
314 scalar_functions: scalar_functions_fn_wrapper,
315 aggregate_functions: aggregate_functions_fn_wrapper,
316 window_functions: window_functions_fn_wrapper,
317 table_options: table_options_fn_wrapper,
318 default_table_options: default_table_options_fn_wrapper,
319 task_ctx: task_ctx_fn_wrapper,
320 logical_codec: provider.logical_codec.clone(),
321
322 clone: clone_fn_wrapper,
323 release: release_fn_wrapper,
324 version: super::version,
325 private_data,
326 library_marker_id: crate::get_library_marker_id,
327 }
328 }
329}
330
331impl Drop for FFI_SessionRef {
332 fn drop(&mut self) {

Callers

nothing calls this directly

Calls 2

newFunction · 0.85
cloneMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…