Skip to main content

ahri_tre_tabular/
lib.rs

1//! Arrow and Parquet boundary helpers for AHRI_TRE workflows.
2//!
3//! This crate treats Arrow [`RecordBatch`] values as the canonical in-memory
4//! table representation, Parquet as the persisted dataset format, and Arrow IPC
5//! as the binary transport format.
6
7mod columns;
8mod error;
9mod ipc;
10mod metadata;
11mod parquet_io;
12pub mod streaming;
13mod table;
14
15pub use arrow_array::RecordBatch;
16pub use arrow_schema::{DataType, Field, Schema, SchemaRef};
17
18pub use columns::{TabularColumn, columns_to_record_batch, record_batch_to_columns};
19pub use error::{Result, TabularError};
20pub use ipc::{
21    ArrowIpcCompression, ArrowIpcWriteOptions, open_ipc_messages, read_ipc_file, read_ipc_schema,
22    read_ipc_stream, write_ipc_file, write_ipc_file_to_writer, write_ipc_file_with_options,
23    write_ipc_stream, write_ipc_stream_to_writer, write_ipc_stream_with_options,
24};
25pub use metadata::{
26    AHRI_TRE_METADATA_PREFIX, AhriTreArrowMetadata, AhriTreFieldMetadata, AnnotatedArrowTable,
27    FieldMetadataProposal, JsonMetadataExtraction, VocabularyItemProposal, annotate_arrow_schema,
28    annotate_arrow_table, extract_field_metadata_proposal, extract_field_metadata_proposals,
29    extract_json_field_metadata_proposals, extract_json_file_metadata_proposals,
30    keys as metadata_keys,
31};
32pub use parquet_io::{
33    ParquetReadOptions, ParquetWriteOptions, read_parquet_file, read_parquet_file_with_options,
34    read_parquet_schema, write_parquet_file, write_parquet_file_with_options,
35};
36pub use table::ArrowTable;