vortex_dtype/
lib.rs

1// SPDX-License-Identifier: Apache-2.0
2// SPDX-FileCopyrightText: Copyright the Vortex contributors
3
4#![cfg(target_endian = "little")]
5#![deny(missing_docs)]
6
7//! A type system for Vortex
8//!
9//! This crate contains the core logical type system for Vortex, including the definition of data types,
10//! and (optionally) logic for their serialization and deserialization.
11
12#[cfg(feature = "arbitrary")]
13mod arbitrary;
14#[cfg(feature = "arrow")]
15pub mod arrow;
16pub mod datetime;
17mod decimal;
18mod dtype;
19mod extension;
20mod field;
21mod field_mask;
22mod field_names;
23mod native_dtype;
24mod nullability;
25mod ptype;
26mod serde;
27mod struct_;
28
29pub use decimal::*;
30pub use dtype::{DType, NativeDType};
31pub use extension::*;
32pub use field::*;
33pub use field_mask::*;
34pub use field_names::*;
35pub use half;
36pub use nullability::*;
37pub use ptype::*;
38pub use struct_::*;
39
40pub mod proto {
41    //! Protocol buffer representations for DTypes
42    //!
43    //! This module contains the code to serialize and deserialize DTypes to and from protocol buffers.
44
45    pub use vortex_proto::dtype;
46}
47
48pub mod flatbuffers {
49    //! Flatbuffer representations for DTypes
50    //!
51    //! This module contains the code to serialize and deserialize DTypes to and from flatbuffers.
52
53    pub use vortex_flatbuffers::dtype::*;
54
55    pub use super::serde::flatbuffers::*;
56}