|
sparrow 1.4.0
C++20 idiomatic APIs for the Apache Arrow Columnar Format
|
#include <array>#include <concepts>#include <cstdint>#include <memory>#include <optional>#include <ranges>#include <unordered_set>#include "sparrow/arrow_interface/arrow_schema/private_data.hpp"#include "sparrow/c_interface.hpp"#include "sparrow/config/config.hpp"#include "sparrow/utils/contracts.hpp"#include "sparrow/utils/metadata.hpp"Go to the source code of this file.
Classes | |
| struct | sparrow::arrow_schema_deleter |
Namespaces | |
| namespace | sparrow |
Typedefs | |
| using | sparrow::schema_unique_ptr = std::unique_ptr<ArrowSchema, arrow_schema_deleter> |
Functions | |
| template<class F, class N, input_metadata_container M = std::vector<metadata_pair>, std::ranges::input_range CHILDREN_OWNERSHIP> requires std::constructible_from<arrow_schema_private_data::FormatType, F> && std::constructible_from<arrow_schema_private_data::NameType, N> && std::is_same_v<std::ranges::range_value_t<CHILDREN_OWNERSHIP>, bool> | |
| ArrowSchema | sparrow::make_arrow_schema (F format, N name, std::optional< M > metadata, std::optional< std::unordered_set< ArrowFlag > > flags, ArrowSchema **children, const CHILDREN_OWNERSHIP &children_ownership, ArrowSchema *dictionary, bool dictionary_ownership) |
Creates an ArrowSchema owned by a unique_ptr and holding the provided data. | |
| SPARROW_API void | sparrow::release_arrow_schema (ArrowSchema *schema) |
Release function to use for the ArrowSchema.release member. | |
| SPARROW_API void | sparrow::empty_release_arrow_schema (ArrowSchema *schema) |
Empty release function to use for the ArrowSchema.release member. | |
| template<class F, class N, input_metadata_container M = std::vector<metadata_pair>, std::ranges::input_range CHILDREN_OWNERSHIP> requires std::constructible_from<arrow_schema_private_data::FormatType, F> && std::constructible_from<arrow_schema_private_data::NameType, N> && std::is_same_v<std::ranges::range_value_t<CHILDREN_OWNERSHIP>, bool> | |
| void | sparrow::fill_arrow_schema (ArrowSchema &schema, F format, N name, std::optional< M > metadata, std::optional< std::unordered_set< ArrowFlag > > flags, ArrowSchema **children, const CHILDREN_OWNERSHIP &children_ownership, ArrowSchema *dictionary, bool dictionary_ownership) |
| ArrowSchema | sparrow::make_empty_arrow_schema () |
| SPARROW_API void | sparrow::swap (ArrowSchema &lhs, ArrowSchema &rhs) noexcept |
| Swaps the contents of the two ArrowSchema objects. | |
| SPARROW_API void | sparrow::copy_schema (const ArrowSchema &source, ArrowSchema &target) |
Fills the target ArrowSchema with a deep copy of the data from the source ArrowSchema. | |
| ArrowSchema | sparrow::copy_schema (const ArrowSchema &source) |
Deep copy an ArrowSchema. | |
| ArrowSchema | sparrow::move_schema (ArrowSchema &&source) |
| Moves the content of source into a stack-allocated array, and reset the source to an empty ArrowSchema. | |
| ArrowSchema | sparrow::move_schema (ArrowSchema &source) |
| Moves the content of source into a stack-allocated array, and reset the source to an empty ArrowSchema. | |
| bool SPARROW_API | sparrow::check_compatible_schema (const ArrowSchema &schema1, const ArrowSchema &schema2) |