Skip to content

Commit 747e374

Browse files
committed
Move core vector, logical_types, chunk into a seperate module
1 parent 5ed7bb3 commit 747e374

File tree

10 files changed

+22
-19
lines changed

10 files changed

+22
-19
lines changed

crates/duckdb/examples/hello-ext/main.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ extern crate duckdb_loadable_macros;
33
extern crate libduckdb_sys;
44

55
use duckdb::{
6-
vtab::{BindInfo, DataChunk, Free, FunctionInfo, InitInfo, Inserter, LogicalType, LogicalTypeId, VTab},
6+
core::{DataChunk, Inserter, LogicalType, LogicalTypeId},
7+
vtab::{BindInfo, Free, FunctionInfo, InitInfo, VTab},
78
Connection, Result,
89
};
910
use duckdb_loadable_macros::duckdb_entrypoint;

crates/duckdb/src/appender/arrow.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
use super::{ffi, Appender, Result};
22
use crate::{
3+
core::{DataChunk, LogicalType},
34
error::result_from_duckdb_appender,
4-
vtab::{record_batch_to_duckdb_data_chunk, to_duckdb_logical_type, DataChunk, LogicalType},
5+
vtab::{record_batch_to_duckdb_data_chunk, to_duckdb_logical_type},
56
Error,
67
};
78
use arrow::record_batch::RecordBatch;
File renamed without changes.

crates/duckdb/src/vtab/logical_type.rs crates/duckdb/src/core/logical_type.rs

+5-5
Original file line numberDiff line numberDiff line change
@@ -293,30 +293,30 @@ impl LogicalType {
293293

294294
#[cfg(test)]
295295
mod test {
296-
use super::{LogicalType, LogicalTypeId};
296+
use crate::core::{LogicalType, LogicalTypeId};
297297

298298
#[test]
299299
fn test_struct() {
300-
let fields = &[("hello", LogicalType::new(crate::vtab::LogicalTypeId::Boolean))];
300+
let fields = &[("hello", LogicalType::new(crate::core::LogicalTypeId::Boolean))];
301301
let typ = LogicalType::struct_type(fields);
302302

303303
assert_eq!(typ.num_children(), 1);
304304
assert_eq!(typ.child_name(0), "hello");
305-
assert_eq!(typ.child(0).id(), crate::vtab::LogicalTypeId::Boolean);
305+
assert_eq!(typ.child(0).id(), crate::core::LogicalTypeId::Boolean);
306306
}
307307

308308
#[test]
309309
fn test_decimal() {
310310
let typ = LogicalType::decimal(10, 2);
311311

312-
assert_eq!(typ.id(), crate::vtab::LogicalTypeId::Decimal);
312+
assert_eq!(typ.id(), crate::core::LogicalTypeId::Decimal);
313313
assert_eq!(typ.decimal_width(), 10);
314314
assert_eq!(typ.decimal_scale(), 2);
315315
}
316316

317317
#[test]
318318
fn test_decimal_methods() {
319-
let typ = LogicalType::new(crate::vtab::LogicalTypeId::Varchar);
319+
let typ = LogicalType::new(crate::core::LogicalTypeId::Varchar);
320320

321321
assert_eq!(typ.decimal_width(), 0);
322322
assert_eq!(typ.decimal_scale(), 0);

crates/duckdb/src/core/mod.rs

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
mod data_chunk;
2+
mod logical_type;
3+
mod vector;
4+
5+
pub use data_chunk::DataChunk;
6+
pub use logical_type::{LogicalType, LogicalTypeId};
7+
pub use vector::*;
File renamed without changes.

crates/duckdb/src/lib.rs

+2
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,8 @@ pub use arrow;
9393
#[cfg(feature = "polars")]
9494
pub use polars::{self, export::arrow as arrow2};
9595

96+
pub mod core;
97+
9698
#[macro_use]
9799
mod error;
98100
mod appender;

crates/duckdb/src/vtab/arrow.rs

+2-5
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
1-
use super::{
2-
vector::{ArrayVector, FlatVector, ListVector, Vector},
3-
BindInfo, DataChunk, Free, FunctionInfo, InitInfo, LogicalType, LogicalTypeId, StructVector, VTab,
4-
};
1+
use super::{BindInfo, DataChunk, Free, FunctionInfo, InitInfo, LogicalType, LogicalTypeId, VTab};
52
use std::ptr::null_mut;
63

7-
use crate::vtab::vector::Inserter;
4+
use crate::core::{ArrayVector, FlatVector, Inserter, ListVector, StructVector, Vector};
85
use arrow::array::{
96
as_boolean_array, as_generic_binary_array, as_large_list_array, as_list_array, as_primitive_array, as_string_array,
107
as_struct_array, Array, ArrayData, AsArray, BinaryArray, BooleanArray, Decimal128Array, FixedSizeListArray,

crates/duckdb/src/vtab/excel.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
use super::{BindInfo, DataChunk, Free, FunctionInfo, InitInfo, LogicalType, LogicalTypeId, VTab};
2-
use crate::vtab::vector::Inserter;
2+
use crate::core::Inserter;
33
use calamine::{open_workbook_auto, DataType, Range, Reader};
44

55
#[repr(C)]

crates/duckdb/src/vtab/mod.rs

+1-6
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,8 @@ use crate::{error::Error, inner_connection::InnerConnection, Connection, Result}
33
use super::{ffi, ffi::duckdb_free};
44
use std::ffi::c_void;
55

6-
mod data_chunk;
76
mod function;
8-
mod logical_type;
97
mod value;
10-
mod vector;
118

129
/// The duckdb Arrow table function interface
1310
#[cfg(feature = "vtab-arrow")]
@@ -20,12 +17,10 @@ pub use self::arrow::{
2017
#[cfg(feature = "vtab-excel")]
2118
mod excel;
2219

23-
pub use data_chunk::DataChunk;
2420
pub use function::{BindInfo, FunctionInfo, InitInfo, TableFunction};
25-
pub use logical_type::{LogicalType, LogicalTypeId};
2621
pub use value::Value;
27-
pub use vector::{FlatVector, Inserter, ListVector, StructVector, Vector};
2822

23+
use crate::core::{DataChunk, Inserter, LogicalType, LogicalTypeId};
2924
use ffi::{duckdb_bind_info, duckdb_data_chunk, duckdb_function_info, duckdb_init_info};
3025

3126
use ffi::duckdb_malloc;

0 commit comments

Comments
 (0)