-
Notifications
You must be signed in to change notification settings - Fork 14
Expand file tree
/
Copy pathlib.rs
More file actions
71 lines (67 loc) · 1.87 KB
/
Copy pathlib.rs
File metadata and controls
71 lines (67 loc) · 1.87 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
// SPDX-License-Identifier: Apache-2.0
// SPDX-FileCopyrightText: Copyright The Lance Authors
//! C/C++ bindings for the Lance columnar data format.
//!
//! This crate exposes Lance's functionality through a stable C-ABI with
//! opaque handle patterns and Arrow C Data Interface for zero-copy data exchange.
//!
//! # Safety
//!
//! All `extern "C"` functions in this crate follow the C FFI safety contract:
//! - Pointers must be valid and non-null (unless documented as nullable).
//! - Opaque handles must have been created by the corresponding `lance_*_open`
//! or `lance_*_new` function and must not be used after `lance_*_close`/`lance_*_free`.
//! - The caller is responsible for freeing returned strings with `lance_free_string()`.
#![allow(clippy::missing_safety_doc)]
#[cfg(not(panic = "unwind"))]
compile_error!(
"lance-c requires panic=\"unwind\" so its C ABI panic firewall can honor LANCE_ERR_PANIC"
);
mod add_columns;
mod alter_columns;
mod async_bridge;
mod async_dispatcher;
mod batch;
mod compact;
mod data_statistics;
mod dataset;
mod delete;
mod drop_columns;
mod error;
mod fragment_writer;
mod fts_query;
mod helpers;
mod index;
mod index_model;
mod index_segment;
mod merge_insert;
mod restore;
pub mod runtime;
mod scanner;
pub mod stream_guard;
mod update;
mod versions;
mod writer;
// Re-export all extern "C" symbols so they appear in the cdylib.
pub use add_columns::*;
pub use alter_columns::*;
pub use batch::*;
pub use compact::*;
pub use data_statistics::*;
pub use dataset::*;
pub use delete::*;
pub use drop_columns::*;
pub use error::{
LanceErrorCode, lance_free_string, lance_last_error_code, lance_last_error_message,
};
pub use fragment_writer::*;
pub use fts_query::*;
pub use index::*;
pub use index_model::*;
pub use index_segment::*;
pub use merge_insert::*;
pub use restore::*;
pub use scanner::*;
pub use update::*;
pub use versions::*;
pub use writer::*;