Expand description
Module with database related functionality. In particular, this module contains the
accessor traits and the OwnedTable
type along with some utility functions to convert
between Arrow and OwnedTable
.
Re-exports§
pub use crate::base::arrow::arrow_array_to_column_conversion::ArrayRefExt;
pub use crate::base::arrow::arrow_array_to_column_conversion::ArrowArrayToColumnConversionError;
pub use crate::base::arrow::owned_and_arrow_conversions::OwnedArrowConversionError;
pub use crate::base::arrow::record_batch_utility::ToArrow;
pub use crate::base::arrow::scalar_and_i256_conversions;
Modules§
- This module provides utility functions for working with Arrow schemas in the context of Proof of SQL. It includes functionality to convert Arrow schemas to PoSQL-compatible formats.
- Utility functions for creating
OwnedTable
s andOwnedColumn
s. These functions are primarily intended for use in tests.
Structs§
- This type is used to represent the metadata of a column in a table. Namely: it’s name and type.
- Reference of a SQL column
- A table of data, with schema included. This is simply a map from
Ident
toOwnedColumn
, where columns order matters. This is primarily used as an internal result that is used before converting to the final result in either Arrow format or JSON. This is the analog of an arrowRecordBatch
. - A test accessor that uses
OwnedTable
as the underlying table type. Note: this is intended for testing and examples. It is not optimized for performance, so should not be used for benchmarks or production use-cases. - A table of data, with schema included. This is simply a map from
Ident
toColumn
, where columns order matters. This is primarily used as an internal result that is used before converting to the final result in either Arrow format or JSON. This is the analog of an arrowRecordBatch
. - The result of evaluating a table
- Options for creating a table. Inspired by
RecordBatchOptions
- Expression for an SQL table
- A test accessor that uses
Table
as the underlying table type. Note: this is intended for testing and examples. It is not optimized for performance, so should not be used for benchmarks or production use-cases.
Enums§
- Represents a read-only view of a column in an in-memory, column-oriented database.
- Errors from operations on columns.
- Represents the supported data types of a column in an in-memory, column-oriented database.
- The result of evaluating an expression.
- Errors from evaluation of
Expression
s. - Represents a literal value.
- Supported types for
OwnedColumn
- Errors from operations related to
OwnedColumn
s. - Errors from operations on tables.
Traits§
- Access commitments of database columns.
- Access database columns of an in-memory table span.
- Access metadata of a table span in a database.
- Access tables and their schemas in a database.
- A trait that defines the interface for a combined metadata, schema, commitment, and data accessor for unit testing or example purposes.
Functions§
- Determine the output type of an add or subtract operation if it is possible to add or subtract the two input types. If the types are not compatible, return an error.
- Determine the output type of a division operation if it is possible to multiply the two input types. If the types are not compatible, return an error.
- Determine the output type of a multiplication operation if it is possible to multiply the two input types. If the types are not compatible, return an error.
Type Aliases§
- Result type for column operations
- Result type for expression evaluation
- Result type for operations related to
OwnedColumn
s. - Result type for table operations