sparrow 0.3.0
|
Namespaces | |
namespace | chrono |
namespace | detail |
namespace | details |
namespace | impl |
namespace | mpl |
namespace | predicate |
Concepts | |
concept | layout_or_array |
concept | allocator |
concept | can_any_allocator_sbo |
concept | BufferReference |
concept | T_is_const_if_FromBufferRef_is_const |
concept | validity_bitmap_input |
concept | any_arrow_c_interface |
Matches only the C interface structs for Arrow. | |
concept | arrow_schema_or_ptr |
Matches ArrowSchema or a non-const pointer to an ArrowSchema . | |
concept | arrow_array_or_ptr |
Matches ArrowArray or a non-const pointer to an ArrowArray . | |
concept | layout |
concept | iterator_types |
Concept for iterator types. | |
concept | primitive_type |
concept | date_type |
concept | duration_type |
concept | interval_type |
concept | time_type |
concept | timestamp_type |
concept | trivial_copyable_type |
concept | is_arrow_base_type |
Matches C++ representation types which are supported by default. | |
concept | is_arrow_base_type_extended |
Checks if a type is an extended base type for Arrow. | |
concept | is_arrow_traits |
Matches valid and complete arrow_traits specializations for type T. | |
concept | has_arrow_type_traits |
Matches types providing valid and complete arrow_traits specialization. | |
concept | any_arrow_type |
Matches any type which is one of the base C++ types supported or at least that provides an arrow_traits specialization. | |
concept | layout_offset |
concept | RangeOfRanges |
concept | Format |
concept | RangeOfFormats |
concept | clonable |
Matches types that provide a clone method. | |
concept | is_nullable_of |
concept | is_nullable_of_convertible_to |
concept | range_of_nullables |
Typedefs | |
using | validity_bitmap = dynamic_bitset<std::uint8_t> |
template<class D> | |
using | array_bitmap_base = array_bitmap_base_impl<D, false> |
Convenient typedef to be used as a crtp base class for arrays using an immutable validity buffer. | |
template<class D> | |
using | mutable_array_bitmap_base = array_bitmap_base_impl<D, true> |
Convenient typedef to be used as a crtp base class for arrays using a mutable validity buffer. | |
using | decimal_32_array = decimal_array<decimal<int32_t>> |
using | decimal_64_array = decimal_array<decimal<int64_t>> |
using | decimal_128_array = decimal_array<decimal<int128_t>> |
using | decimal_256_array = decimal_array<decimal<int256_t>> |
template<class F> | |
using | visit_result_t = std::invoke_result_t<F, null_array> |
using | fixed_width_binary_traits = arrow_traits<std::vector<byte_t>> |
using | fixed_width_binary_array |
using | list_array = list_array_impl<false> |
using | big_list_array = list_array_impl<true> |
using | list_view_array = list_view_array_impl<false> |
using | big_list_view_array = list_view_array_impl<true> |
template<primitive_type T> | |
using | primitive_array = array_trivial_copyable<T> |
Array of values of whose type has fixed binary size. | |
using | date_types_t = mpl::typelist<date_days, date_milliseconds> |
template<date_type T> | |
using | date_array = array_trivial_copyable<T> |
Array of std::chrono::duration values. | |
using | date_days_array = date_array<date_days> |
using | date_milliseconds_array = date_array<date_milliseconds> |
using | date_days = std::chrono::time_point<std::chrono::system_clock, chrono::days> |
using | date_milliseconds = std::chrono::time_point<std::chrono::system_clock, std::chrono::milliseconds> |
using | duration_types_t |
template<duration_type T> | |
using | duration_array = array_trivial_copyable<T> |
Array of std::chrono::duration values. | |
using | duration_seconds_array = duration_array<std::chrono::seconds> |
using | duration_milliseconds_array = duration_array<std::chrono::milliseconds> |
using | duration_microseconds_array = duration_array<std::chrono::microseconds> |
using | duration_nanoseconds_array = duration_array<std::chrono::nanoseconds> |
using | interval_types_t = mpl::typelist<chrono::months, days_time_interval, month_day_nanoseconds_interval> |
template<interval_type T> | |
using | interval_array = array_trivial_copyable<T> |
Array of interval values. | |
using | months_interval_array = interval_array<chrono::months> |
using | days_time_interval_array = interval_array<days_time_interval> |
using | month_day_nanoseconds_interval_array = interval_array<month_day_nanoseconds_interval> |
using | time_types_t |
template<time_type T> | |
using | time_array = array_trivial_copyable<T> |
Array of time values. | |
using | time_seconds_array = time_array<chrono::time_seconds> |
using | time_milliseconds_array = time_array<chrono::time_milliseconds> |
using | time_microseconds_array = time_array<chrono::time_microseconds> |
using | time_nanoseconds_array = time_array<chrono::time_nanoseconds> |
using | timestamp_second = timestamp<std::chrono::seconds> |
using | timestamp_millisecond = timestamp<std::chrono::milliseconds> |
using | timestamp_microsecond = timestamp<std::chrono::microseconds> |
using | timestamp_nanosecond = timestamp<std::chrono::nanoseconds> |
using | timestamp_seconds_array = timestamp_array<timestamp_second> |
using | timestamp_milliseconds_array = timestamp_array<timestamp_millisecond> |
using | timestamp_microseconds_array = timestamp_array<timestamp_microsecond> |
using | timestamp_nanoseconds_array = timestamp_array<timestamp_nanosecond> |
using | timestamp_types_t |
using | binary_traits = arrow_traits<std::vector<byte_t>> |
using | string_array = variable_size_binary_array_impl<std::string, std::string_view, std::int32_t> |
using | big_string_array = variable_size_binary_array_impl<std::string, std::string_view, std::int64_t> |
using | binary_array = variable_size_binary_array_impl<binary_traits::value_type, binary_traits::const_reference, std::int32_t> |
using | big_binary_array |
using | string_view_array = variable_size_binary_view_array_impl<std::string_view> |
using | binary_view_array = variable_size_binary_view_array_impl<std::span<const std::byte>> |
using | float16_t = numeric::float16_t |
using | float32_t = float |
using | float64_t = double |
template<typename Duration, typename TimeZonePtr = const date::time_zone*> | |
using | timestamp = date::zoned_time<Duration, TimeZonePtr> |
using | byte_t = std::byte |
using | all_base_types_t |
C++ types value representation types matching Arrow types. | |
using | all_base_types_extended_t = mpl::append_t<all_base_types_t, char, std::string_view> |
is arrow base type or arrow compound type (list<T>, struct<T> etc.) | |
template<class T> | |
using | get_corresponding_arrow_type_t = std::conditional_t<std::same_as<T, std::string_view>, std::string, T> |
Template alias to get the corresponding Arrow type for a given type. | |
template<has_arrow_type_traits T> | |
using | default_layout_t = typename arrow_traits<T>::default_layout |
Binary layout type to use by default for the given C++ representation T of an arrow value. | |
using | int128_t = primesum::int128_t |
using | int256_t = primesum::int256_t |
Functions | |
template<layout_or_array A> | |
bool | owns_arrow_array (const A &a) |
Returns true if the given layout or array has ownership of its internal ArrowArray. | |
template<layout_or_array A> | |
bool | owns_arrow_schema (const A &a) |
Returns true if the given layout or array has ownership of its internal ArrowSchema. | |
template<layout_or_array A> | |
ArrowArray * | get_arrow_array (A &a) |
Returns a pointer to the internal ArrowArray of the given array or layout. | |
template<layout_or_array A> | |
ArrowSchema * | get_arrow_schema (A &a) |
Returns a pointer to the internal ArrowSchema of the given array or layout. | |
template<layout_or_array A> | |
std::pair< ArrowArray *, ArrowSchema * > | get_arrow_structures (A &a) |
Returns pointers to the internal ArrowArray and ArrowSchema of the given Array or layout. | |
template<layout_or_array A> | |
ArrowArray | extract_arrow_array (A &&a) |
Extracts the internal ArrowArray structure from the given Array or typed layout. | |
template<layout_or_array A> | |
ArrowSchema | extract_arrow_schema (A &&a) |
Extracts the internal ArrowSchema structure from the given array or typed layout. | |
template<layout_or_array A> | |
std::pair< ArrowArray, ArrowSchema > | extract_arrow_structures (A &&a) |
Extracts the internal ArrowArrays and ArrowSchema structures from the given array or typed layout. | |
SPARROW_API bool | operator== (const array &lhs, const array &rhs) |
Compares the content of two arrays. | |
SPARROW_API cloning_ptr< array_wrapper > | array_factory (arrow_proxy proxy) |
template<class B> requires std::constructible_from<arrow_array_private_data::BufferType, B> | |
ArrowArray | make_arrow_array (int64_t length, int64_t null_count, int64_t offset, B buffers, size_t n_children, ArrowArray **children, ArrowArray *dictionary) |
Creates an ArrowArray . | |
SPARROW_API void | release_arrow_array (ArrowArray *array) |
Release function to use for the ArrowArray.release member. | |
SPARROW_API void | empty_release_arrow_array (ArrowArray *array) |
Empty release function to use for the ArrowArray.release member. | |
template<class B> requires std::constructible_from<arrow_array_private_data::BufferType, B> | |
void | fill_arrow_array (ArrowArray &array, int64_t length, int64_t null_count, int64_t offset, B buffers, size_t n_children, ArrowArray **children, ArrowArray *dictionary) |
Fill an ArrowArray object. | |
ArrowArray | make_empty_arrow_array () |
SPARROW_API sparrow::buffer_view< uint8_t > | get_bitmap_buffer (const ArrowArray &array) |
SPARROW_API std::vector< sparrow::buffer_view< uint8_t > > | get_arrow_array_buffers (const ArrowArray &array, const ArrowSchema &schema) |
SPARROW_API void | swap (ArrowArray &lhs, ArrowArray &rhs) |
Swaps the contents of the two ArrowArray objects. | |
SPARROW_API void | copy_array (const ArrowArray &source_array, const ArrowSchema &source_schema, ArrowArray &target) |
Fill the target ArrowArray with a deep copy of the data from the source ArrowArray. | |
ArrowArray | copy_array (const ArrowArray &source_array, const ArrowSchema &source_schema) |
Create a deep copy of the source ArrowArray. | |
ArrowArray | move_array (ArrowArray &&source) |
Moves the content of source into a stack-allocated array, and reset the source to an empty ArrowArray. | |
ArrowArray | move_array (ArrowArray &source) |
Moves the content of source into a stack-allocated array, and reset the source to an empty ArrowArray. | |
bool | validate_format_with_arrow_array (data_type, const ArrowArray &) |
constexpr bool | has_bitmap (data_type dt) |
template<class T> requires std::same_as<T, ArrowArray> || std::same_as<T, ArrowSchema> | |
void | release_common_arrow (T &t) |
Release the children and dictionnary of an ArrowArray or ArrowSchema . | |
template<class T> | |
constexpr int64_t | ssize (const T &value) |
Get the size of a range, a tuple or an optional. | |
template<typename T, typename U> | |
constexpr T * | get_raw_ptr (U &var) |
Get a raw pointer from a smart pointer, a range, an object or a pointer. | |
template<class T, std::ranges::input_range Range, class Allocator = std::allocator<T*>> requires (!std::ranges::view<Range>) | |
constexpr std::vector< T *, Allocator > | to_raw_ptr_vec (Range &range) |
Create a vector of pointers to elements from a range. | |
template<class T, class Optional, class Allocator = std::allocator<T*>> requires (mpl::is_type_instance_of_v<Optional, std::optional>) | |
constexpr std::vector< T *, Allocator > | to_raw_ptr_vec (Optional &optional) |
Create a vector of pointers to elements from a std::optional<range>. | |
template<class T, class Tuple, class Allocator = std::allocator<T*>> requires mpl::is_type_instance_of_v<Tuple, std::tuple> | |
constexpr std::vector< T *, Allocator > | to_raw_ptr_vec (Tuple &tuple) |
Create a vector of pointers to elements of a tuple. | |
template<class T> requires std::same_as<T, std::nullopt_t> || (mpl::is_type_instance_of_v<T, std::optional> && mpl::testable<std::ranges::range_value_t<typename T::value_type>>) || (std::ranges::range<T> && mpl::testable<std::ranges::range_value_t<T>>) | |
constexpr bool | all_element_are_true (const T &elements) |
Check if all elements of a range or std::optional<range> are valid by caling their bool operator. | |
constexpr bool | is_valid_ArrowFlag_value (int64_t value) noexcept |
constexpr std::vector< ArrowFlag > | to_vector_of_ArrowFlags (int64_t flag_values) |
Converts a bitfield of ArrowFlag values to a vector of ArrowFlag values. | |
constexpr int64_t | to_ArrowFlag_value (const std::vector< ArrowFlag > &flags) |
Converts a vector of ArrowFlag values to a bitfield of ArrowFlag values. | |
template<class F, class N, class M> requires std::constructible_from<arrow_schema_private_data::FormatType, F> && std::constructible_from<arrow_schema_private_data::NameType, N> && std::constructible_from<arrow_schema_private_data::MetadataType, M> | |
ArrowSchema | make_arrow_schema (F format, N name, M metadata, std::optional< ArrowFlag > flags, int64_t n_children, ArrowSchema **children, ArrowSchema *dictionary) |
Creates an ArrowSchema owned by a unique_ptr and holding the provided data. | |
SPARROW_API void | release_arrow_schema (ArrowSchema *schema) |
Release function to use for the ArrowSchema.release member. | |
SPARROW_API void | empty_release_arrow_schema (ArrowSchema *schema) |
Empty release function to use for the ArrowSchema.release member. | |
template<class F, class N, class M> requires std::constructible_from<arrow_schema_private_data::FormatType, F> && std::constructible_from<arrow_schema_private_data::NameType, N> && std::constructible_from<arrow_schema_private_data::MetadataType, M> | |
void | fill_arrow_schema (ArrowSchema &schema, F format, N name, M metadata, std::optional< ArrowFlag > flags, int64_t n_children, ArrowSchema **children, ArrowSchema *dictionary) |
ArrowSchema | make_empty_arrow_schema () |
SPARROW_API void | swap (ArrowSchema &lhs, ArrowSchema &rhs) |
Swaps the contents of the two ArrowSchema objects. | |
SPARROW_API void | copy_schema (const ArrowSchema &source, ArrowSchema &target) |
Fills the target ArrowSchema with a deep copy of the data from the source ArrowSchema . | |
ArrowSchema | copy_schema (const ArrowSchema &source) |
Deep copy an ArrowSchema . | |
ArrowSchema | move_schema (ArrowSchema &&source) |
Moves the content of source into a stack-allocated array, and reset the source to an empty ArrowSchema. | |
ArrowSchema | move_schema (ArrowSchema &source) |
Moves the content of source into a stack-allocated array, and reset the source to an empty ArrowSchema. | |
template<class T> | |
constexpr std::optional< std::string > | to_optional_string (T &&t) |
template<class T> | |
bool | operator== (const any_allocator< T > &lhs, const any_allocator< T > &rhs) |
template<class T> | |
constexpr bool | operator== (const buffer< T > &lhs, const buffer< T > &rhs) noexcept |
template<typename To, class FromBufferRef> | |
auto | make_buffer_adaptor (FromBufferRef &buf) |
template<class T> | |
bool | operator== (const buffer_view< T > &lhs, const buffer_view< T > &rhs) |
template<class B1, class B2> | |
bool | operator== (const bitset_reference< B1 > &lhs, const bitset_reference< B2 > &rhs) |
template<class B> | |
bool | operator== (const bitset_reference< B > &lhs, bool rhs) |
template<validity_bitmap_input R> | |
validity_bitmap | ensure_validity_bitmap (std::size_t size, R &&validity_input) |
template<class T, class... OPTION_FLAGS> | |
auto | build (T &&t, OPTION_FLAGS &&...) |
function to create a sparrow array from arbitrary nested combinations of ranges, tuples, and nullable types, variants. | |
template<class T, class... OPTION_FLAGS> | |
auto | build (std::initializer_list< T > t, OPTION_FLAGS &&... flags) |
template<class D> | |
bool | operator== (const array_crtp_base< D > &lhs, const array_crtp_base< D > &rhs) |
Checks if the contents of lhs and rhs are equal, that is, they have the same number of elements and each element in lhs compares equal with the element in rhs at the same position. | |
SPARROW_API std::size_t | array_size (const array_wrapper &ar) |
SPARROW_API bool | array_has_value (const array_wrapper &ar, std::size_t index) |
SPARROW_API array_traits::const_reference | array_element (const array_wrapper &ar, std::size_t index) |
SPARROW_API array_traits::inner_value_type | array_default_element_value (const array_wrapper &ar) |
template<class T> | |
T & | unwrap_array (array_wrapper &) |
template<class T> | |
const T & | unwrap_array (const array_wrapper &) |
template<class IT> | |
bool | operator== (const dictionary_encoded_array< IT > &lhs, const dictionary_encoded_array< IT > &rhs) |
template<class F> | |
visit_result_t< F > | visit (F &&func, const array_wrapper &ar) |
SPARROW_API std::size_t | num_bytes_for_fixed_sized_binary (std::string_view format) |
Get the number of bytes for a fixed width binary layout from the ArrowArray format string. | |
SPARROW_API bool | operator== (const list_value &lhs, const list_value &rhs) |
SPARROW_API bool | operator== (const null_array &lhs, const null_array &rhs) |
SPARROW_API bool | operator== (const run_end_encoded_array &lhs, const run_end_encoded_array &rhs) |
SPARROW_API bool | operator== (const struct_value &lhs, const struct_value &rhs) |
bool | operator== (const days_time_interval &lhs, const days_time_interval &rhs) |
bool | operator== (const month_day_nanoseconds_interval &lhs, const month_day_nanoseconds_interval &rhs) |
template<class D> | |
bool | operator== (const union_array_crtp_base< D > &lhs, const union_array_crtp_base< D > &rhs) |
SPARROW_API bool | operator== (const record_batch &lhs, const record_batch &rhs) |
Compares the content of two record_batch objects. | |
bool | operator== (const null_type &, const null_type &) |
bool | all_digits (const std::string_view s) |
SPARROW_API std::size_t | num_bytes_for_decimal (const char *format) |
data_type | format_to_data_type (std::string_view format) |
template<std::floating_point T> requires (sizeof(T) >= 2 && sizeof(T) <= 8) | |
constexpr data_type | data_type_from_size (T={}) |
template<std::integral T> requires (sizeof(T) >= 1 && sizeof(T) <= 8) | |
constexpr data_type | data_type_from_size (T={}) |
constexpr std::string_view | data_type_to_format (data_type type) |
constexpr bool | data_type_is_primitive (data_type dt) |
constexpr bool | data_type_is_integer (data_type dt) |
template<has_arrow_type_traits T> | |
constexpr auto | arrow_type_id () -> data_type |
template<has_arrow_type_traits T> | |
constexpr auto | arrow_type_id (const T &) -> data_type |
template<has_arrow_type_traits T> | |
constexpr std::string_view | data_type_format_of () |
template<std::integral T> | |
constexpr T | byteswap (T value) noexcept |
Reverses the bytes in the given integer value. | |
template<std::endian input_value_endianess> | |
constexpr auto | to_native_endian (std::integral auto value) noexcept |
template<std::ranges::range R> requires std::ranges::sized_range<std::ranges::range_value_t<R>> | |
size_t | number_of_bytes (const R &ranges) |
template<std::ranges::range R> requires (std::ranges::sized_range<std::ranges::range_value_t<R>>) | |
buffer< uint8_t > | strings_to_buffer (R &&strings) |
template<std::ranges::range R> requires (std::is_arithmetic_v<std::ranges::range_value_t<R>>) | |
buffer< uint8_t > | range_to_buffer (R &&range) |
constexpr size_t | max_width (const std::ranges::input_range auto &data) |
template<RangeOfRanges Columns> | |
constexpr std::vector< size_t > | columns_widths (const Columns &columns) |
template<typename OutputIt, std::ranges::input_range Widths, std::ranges::input_range Values> requires (std::same_as<std::ranges::range_value_t<Widths>, size_t>) | |
constexpr void | to_row (OutputIt out, const Widths &widths, const Values &values, std::string_view separator="|") |
template<typename OutputIt> | |
constexpr void | horizontal_separator (OutputIt out, const std::vector< size_t > &widths, std::string_view separator="-") |
template<std::ranges::input_range Headers, RangeOfRanges Columns, typename OutputIt> requires (std::convertible_to<std::ranges::range_value_t<Headers>, std::string>) | |
constexpr void | to_table_with_columns (OutputIt out, const Headers &headers, const Columns &columns) |
template<class T> | |
pointer_iterator< T * > | make_pointer_iterator (T *t) |
template<class InputIt, std::integral Distance> | |
constexpr InputIt | next (InputIt it, Distance n) |
template<class T> requires (std::is_same_v<T, int128_t> || std::is_same_v<T, int256_t>) | |
std::ostream & | operator<< (std::ostream &stream, T n) |
template<class T> | |
void | swap (cloning_ptr< T > &lhs, cloning_ptr< T > &rhs) noexcept |
template<class T1, class T2> requires std::equality_comparable_with<typename cloning_ptr<T1>::pointer, typename cloning_ptr<T2>::pointer> | |
constexpr bool | operator== (const cloning_ptr< T1 > &lhs, const cloning_ptr< T2 > &rhs) noexcept |
template<class T1, class T2> requires std::three_way_comparable_with<typename cloning_ptr<T1>::pointer, typename cloning_ptr<T2>::pointer> | |
constexpr std::compare_three_way_result_t< typename cloning_ptr< T1 >::pointer, typename cloning_ptr< T2 >::pointer > | operator<=> (const cloning_ptr< T1 > &lhs, const cloning_ptr< T2 > &rhs) noexcept |
template<class T> | |
constexpr bool | operator== (const cloning_ptr< T > &lhs, std::nullptr_t) noexcept |
template<class T> requires std::three_way_comparable<typename cloning_ptr<T>::pointer> | |
constexpr std::compare_three_way_result_t< typename cloning_ptr< T >::pointer > | operator<=> (const cloning_ptr< T > &lhs, std::nullptr_t) noexcept |
template<class T, class... Args> | |
cloning_ptr< T > | make_cloning_ptr (Args &&... args) |
constexpr nullval_t | nullval (0) |
template<class T, class B> | |
constexpr void | swap (nullable< T, B > &lhs, nullable< T, B > &rhs) noexcept |
template<class T, class B> | |
constexpr bool | operator== (const nullable< T, B > &lhs, nullval_t) noexcept |
template<class T, mpl::boolean_like B> | |
constexpr std::strong_ordering | operator<=> (const nullable< T, B > &lhs, nullval_t) noexcept |
template<class T, class B, class U> | |
constexpr bool | operator== (const nullable< T, B > &lhs, const U &rhs) noexcept |
template<class T, class B, class U> requires (!impl::is_nullable_v<U> && std::three_way_comparable_with<U, T>) | |
constexpr std::compare_three_way_result_t< T, U > | operator<=> (const nullable< T, B > &lhs, const U &rhs) noexcept |
template<class T, class B, class U, class UB> | |
constexpr bool | operator== (const nullable< T, B > &lhs, const nullable< U, UB > &rhs) noexcept |
template<class T, class B, std::three_way_comparable_with< T > U, class UB> | |
constexpr std::compare_three_way_result_t< T, U > | operator<=> (const nullable< T, B > &lhs, const nullable< U, UB > &rhs) noexcept |
template<class T, mpl::boolean_like B = bool> | |
constexpr nullable< T, B > | make_nullable (T &&value, B &&flag=true) |
template<layout_offset OT, std::ranges::sized_range R> requires std::ranges::sized_range<std::ranges::range_value_t<R>> | |
buffer< OT > | make_offset_buffer (const R &range) |
template<std::ranges::input_range R> requires (std::ranges::sized_range<R>) | |
std::size_t | range_size (R &&r) |
template<std::ranges::input_range R> requires (!std::ranges::sized_range<R>) | |
std::size_t | range_size (R &&r) |
template<std::ranges::range Range> requires std::ranges::sized_range<std::ranges::range_value_t<Range>> | |
constexpr bool | all_same_size (const Range &range) |
template<class... Ts> | |
overloaded (Ts...) -> overloaded< Ts... > | |
template<class T> | |
constexpr bool | operator== (const vector_view< T > &lhs, const vector_view< T > &rhs) |
template<class T> | |
constexpr bool | operator== (const vector_view< T > &lhs, const std::vector< std::decay_t< T > > &rhs) |
template<class T> | |
constexpr std::compare_three_way_result< T > | operator<=> (const vector_view< T > &lhs, const vector_view< T > &rhs) |
template<class T> | |
constexpr std::compare_three_way_result< T > | operator<=> (const vector_view< T > &lhs, const std::vector< std::decay_t< T > > &rhs) |
Variables | |
template<typename T> | |
constexpr bool | is_move_iterator_v = is_move_iterator<T>::value |
constexpr large_list_flag_t | large_list_flag |
constexpr auto | doesnt_own_arrow_data |
Useful shortcut value to specify non-owning handled Arrow data. | |
constexpr auto | owns_arrow_data |
Useful shortcut value to specify full owning of handled Arrow data. | |
constexpr int | SPARROW_VERSION_MAJOR = 0 |
constexpr int | SPARROW_VERSION_MINOR = 3 |
constexpr int | SPARROW_VERSION_PATCH = 0 |
constexpr int | SPARROW_BINARY_CURRENT = 2 |
constexpr int | SPARROW_BINARY_REVISION = 0 |
constexpr int | SPARROW_BINARY_AGE = 0 |
template<class T> | |
constexpr bool | is_decimal_array_v = mpl::is_type_instance_of_v<T, decimal_array> |
template<class T> | |
constexpr bool | is_dictionary_encoded_array_v = detail::is_dictionary_encoded_array<T>::get() |
Checks whether T is a dictionary_encoded_array type. | |
template<class T> | |
constexpr bool | is_list_array_v = std::same_as<T, list_array> |
Checks whether T is a list_array type. | |
template<class T> | |
constexpr bool | is_big_list_array_v = std::same_as<T, big_list_array> |
Checks whether T is a big_list_array type. | |
template<class T> | |
constexpr bool | is_list_view_array_v = std::same_as<T, list_view_array> |
Checks whether T is a list_view_array type. | |
template<class T> | |
constexpr bool | is_big_list_view_array_v = std::same_as<T, big_list_view_array> |
Checks whether T is a big_list_view_array type. | |
template<class T> | |
constexpr bool | is_fixed_sized_list_array_v = std::same_as<T, fixed_sized_list_array> |
Checks whether T is a fixed_sized_list_array type. | |
template<class T> | |
constexpr bool | is_null_array_v = std::same_as<T, null_array> |
Checks whether T is a null_array type. | |
template<class T> | |
constexpr bool | is_primitive_array_v = is_primitive_array<T>::value |
Checkes whether T is a primitive_array type. | |
template<class T> | |
constexpr bool | is_run_end_encoded_array_v = std::same_as<T, run_end_encoded_array> |
Checks whether T is a run_end_encoded_array type. | |
template<class T> | |
constexpr bool | is_struc_array_v = std::same_as<T, struct_array> |
Checks whether T is a struct_array type. | |
static constexpr date_types_t | date_types |
template<class T> | |
constexpr bool | is_date_array_v = is_date_array<T>::value |
Checks whether T is a date_array type. | |
static constexpr duration_types_t | duration_types |
template<class T> | |
constexpr bool | is_duration_array_v = is_duration_array<T>::value |
Checks whether T is a duration_array type. | |
static constexpr interval_types_t | interval_types |
template<class T> | |
constexpr bool | is_interval_array_v = is_interval_array<T>::value |
Checks whether T is a interval_array type. | |
static constexpr time_types_t | time_types |
template<class T> | |
constexpr bool | is_time_array_v = is_time_array<T>::value |
Checks whether T is a time_array type. | |
template<typename T> | |
constexpr bool | is_timestamp_array_v = is_timestamp_array<T>::value |
static constexpr timestamp_types_t | timestamp_types |
template<class T> | |
constexpr bool | is_dense_union_array_v = std::same_as<T, dense_union_array> |
Checks whether T is a dense_union_array type. | |
template<class T> | |
constexpr bool | is_sparse_union_array_v = std::same_as<T, sparse_union_array> |
Checks whether T is a sparse_union_array type. | |
template<class T> | |
constexpr bool | is_string_array_v = std::same_as<T, string_array> |
Checks whether T is a string_array type. | |
template<class T> | |
constexpr bool | is_big_string_array_v = std::same_as<T, big_string_array> |
Checks whether T is a big_string_array type. | |
template<class T> | |
constexpr bool | is_binary_array_v = std::same_as<T, binary_array> |
Checks whether T is a binary_array type. | |
template<class T> | |
constexpr bool | is_big_binary_array_v = std::same_as<T, big_binary_array> |
Checks whether T is a big_binary_array type. | |
template<class T> | |
constexpr bool | is_variable_size_binary_view_array = is_variable_size_binary_view_array_impl<T>::value |
Checks whether T is a variable_size_binary_view_array_impl type. | |
static constexpr all_base_types_t | all_base_types |
Type list of every C++ representation types supported by default, in order matching data_type related values. | |
static constexpr all_base_types_extended_t | all_base_types_extended |
Type list of every C++ representation types supported by default, in order matching data_type related values. | |
template<typename T> | |
constexpr bool | is_decimal_v = mpl::is_type_instance_of_v<T, decimal> |
template<class T> | |
constexpr bool | is_int_placeholder_v = false |
constexpr bool | large_int_placeholders = false |
template<class T> | |
constexpr bool | is_nullable_v = is_nullable<T>::value |
using sparrow::all_base_types_extended_t = mpl::append_t<all_base_types_t, char, std::string_view> |
is arrow base type or arrow compound type (list<T>, struct<T> etc.)
Definition at line 678 of file data_type.hpp.
C++ types value representation types matching Arrow types.
Definition at line 626 of file data_type.hpp.
using sparrow::array_bitmap_base = array_bitmap_base_impl<D, false> |
Convenient typedef to be used as a crtp base class for arrays using an immutable validity buffer.
D | The derived type, |
Definition at line 102 of file array_bitmap_base.hpp.
Definition at line 87 of file variable_size_binary_array.hpp.
using sparrow::big_list_array = list_array_impl<true> |
Definition at line 47 of file list_array.hpp.
using sparrow::big_list_view_array = list_view_array_impl<true> |
Definition at line 50 of file list_array.hpp.
using sparrow::big_string_array = variable_size_binary_array_impl<std::string, std::string_view, std::int64_t> |
Definition at line 85 of file variable_size_binary_array.hpp.
using sparrow::binary_array = variable_size_binary_array_impl<binary_traits::value_type, binary_traits::const_reference, std::int32_t> |
Definition at line 86 of file variable_size_binary_array.hpp.
using sparrow::binary_traits = arrow_traits<std::vector<byte_t>> |
Definition at line 82 of file variable_size_binary_array.hpp.
using sparrow::binary_view_array = variable_size_binary_view_array_impl<std::span<const std::byte>> |
Definition at line 40 of file variable_size_binary_view_array.hpp.
using sparrow::byte_t = std::byte |
Definition at line 140 of file data_type.hpp.
using sparrow::date_array = array_trivial_copyable<T> |
Array of std::chrono::duration values.
As the other arrays in sparrow, date_array<T>
provides an API as if it was holding nullable<T>
values instead of T
values.
Internally, the array contains a validity bitmap and a contiguous memory buffer holding the values.
T | the type of the values in the array. |
Definition at line 44 of file date_array.hpp.
using sparrow::date_days = std::chrono::time_point<std::chrono::system_clock, chrono::days> |
Definition at line 23 of file date_types.hpp.
using sparrow::date_days_array = date_array<date_days> |
Definition at line 46 of file date_array.hpp.
using sparrow::date_milliseconds = std::chrono::time_point<std::chrono::system_clock, std::chrono::milliseconds> |
Definition at line 24 of file date_types.hpp.
Definition at line 47 of file date_array.hpp.
Definition at line 25 of file date_array.hpp.
Definition at line 49 of file interval_array.hpp.
Definition at line 39 of file decimal_array.hpp.
Definition at line 40 of file decimal_array.hpp.
using sparrow::decimal_32_array = decimal_array<decimal<int32_t>> |
Definition at line 37 of file decimal_array.hpp.
using sparrow::decimal_64_array = decimal_array<decimal<int64_t>> |
Definition at line 38 of file decimal_array.hpp.
using sparrow::default_layout_t = typename arrow_traits<T>::default_layout |
Binary layout type to use by default for the given C++ representation T of an arrow value.
Definition at line 787 of file data_type.hpp.
using sparrow::duration_array = array_trivial_copyable<T> |
Array of std::chrono::duration values.
As the other arrays in sparrow, duration_array<T>
provides an API as if it was holding nullable<T>
values instead of T
values.
Internally, the array contains a validity bitmap and a contiguous memory buffer holding the values.
T | the type of the values in the array. |
Definition at line 46 of file duration_array.hpp.
using sparrow::duration_microseconds_array = duration_array<std::chrono::microseconds> |
Definition at line 50 of file duration_array.hpp.
using sparrow::duration_milliseconds_array = duration_array<std::chrono::milliseconds> |
Definition at line 49 of file duration_array.hpp.
using sparrow::duration_nanoseconds_array = duration_array<std::chrono::nanoseconds> |
Definition at line 51 of file duration_array.hpp.
using sparrow::duration_seconds_array = duration_array<std::chrono::seconds> |
Definition at line 48 of file duration_array.hpp.
Definition at line 26 of file duration_array.hpp.
Definition at line 43 of file fixed_width_binary_array.hpp.
using sparrow::fixed_width_binary_traits = arrow_traits<std::vector<byte_t>> |
Definition at line 41 of file fixed_width_binary_array.hpp.
using sparrow::float16_t = numeric::float16_t |
Definition at line 118 of file data_type.hpp.
using sparrow::float32_t = float |
Definition at line 119 of file data_type.hpp.
using sparrow::float64_t = double |
Definition at line 120 of file data_type.hpp.
using sparrow::get_corresponding_arrow_type_t = std::conditional_t<std::same_as<T, std::string_view>, std::string, T> |
Template alias to get the corresponding Arrow type for a given type.
This template alias is used to determine the corresponding Arrow type for a given type. For example, the given type is std::string_view, the corresponding Arrow type is std::string. Otherwise, the corresponding Arrow type is the same as the given type.
T | The type for which to determine the corresponding Arrow type. |
Definition at line 704 of file data_type.hpp.
using sparrow::int128_t = primesum::int128_t |
Definition at line 88 of file large_int.hpp.
using sparrow::int256_t = primesum::int256_t |
Definition at line 89 of file large_int.hpp.
using sparrow::interval_array = array_trivial_copyable<T> |
Array of interval values.
As the other arrays in sparrow, interval_array<T>
provides an API as if it was holding nullable<T>
values instead of T
values.
Internally, the array contains a validity bitmap and a contiguous memory buffer holding the values.
T | the type of the values in the array. |
Definition at line 46 of file interval_array.hpp.
using sparrow::interval_types_t = mpl::typelist<chrono::months, days_time_interval, month_day_nanoseconds_interval> |
Definition at line 27 of file interval_array.hpp.
using sparrow::list_array = list_array_impl<false> |
Definition at line 46 of file list_array.hpp.
using sparrow::list_view_array = list_view_array_impl<false> |
Definition at line 49 of file list_array.hpp.
using sparrow::month_day_nanoseconds_interval_array = interval_array<month_day_nanoseconds_interval> |
Definition at line 50 of file interval_array.hpp.
Definition at line 48 of file interval_array.hpp.
using sparrow::mutable_array_bitmap_base = array_bitmap_base_impl<D, true> |
Convenient typedef to be used as a crtp base class for arrays using a mutable validity buffer.
D | The derived type, |
Definition at line 111 of file array_bitmap_base.hpp.
using sparrow::primitive_array = array_trivial_copyable<T> |
Array of values of whose type has fixed binary size.
The type of the values in the array can be a primitive type, whose size is known at compile time, or an arbitrary binary type whose fixed size is known at runtime only. The current implementation supports types whose size is known at compile time only.
As the other arrays in sparrow, primitive_array<T>
provides an API as if it was holding nullable<T>
values instead of T
values.
Internally, the array contains a validity bitmap and a contiguous memory buffer holding the values.
T | the type of the values in the array. |
Definition at line 42 of file primitive_array.hpp.
using sparrow::string_array = variable_size_binary_array_impl<std::string, std::string_view, std::int32_t> |
Definition at line 84 of file variable_size_binary_array.hpp.
using sparrow::string_view_array = variable_size_binary_view_array_impl<std::string_view> |
Definition at line 39 of file variable_size_binary_view_array.hpp.
using sparrow::time_array = array_trivial_copyable<T> |
Array of time values.
As the other arrays in sparrow, time_array<T>
provides an API as if it was holding nullable<T>
values instead of T
values.
Internally, the array contains a validity bitmap and a contiguous memory buffer holding the values.
T | the type of the values in the array. |
Definition at line 44 of file time_array.hpp.
Definition at line 48 of file time_array.hpp.
Definition at line 47 of file time_array.hpp.
Definition at line 49 of file time_array.hpp.
Definition at line 46 of file time_array.hpp.
using sparrow::time_types_t |
Definition at line 24 of file time_array.hpp.
using sparrow::timestamp = date::zoned_time<Duration, TimeZonePtr> |
Definition at line 129 of file data_type.hpp.
using sparrow::timestamp_microsecond = timestamp<std::chrono::microseconds> |
Definition at line 72 of file timestamp_array.hpp.
Definition at line 77 of file timestamp_array.hpp.
using sparrow::timestamp_millisecond = timestamp<std::chrono::milliseconds> |
Definition at line 71 of file timestamp_array.hpp.
Definition at line 76 of file timestamp_array.hpp.
using sparrow::timestamp_nanosecond = timestamp<std::chrono::nanoseconds> |
Definition at line 73 of file timestamp_array.hpp.
Definition at line 78 of file timestamp_array.hpp.
using sparrow::timestamp_second = timestamp<std::chrono::seconds> |
Definition at line 70 of file timestamp_array.hpp.
Definition at line 75 of file timestamp_array.hpp.
Definition at line 22 of file timestamp_concepts.hpp.
using sparrow::validity_bitmap = dynamic_bitset<std::uint8_t> |
Definition at line 115 of file dynamic_bitset.hpp.
using sparrow::visit_result_t = std::invoke_result_t<F, null_array> |
Definition at line 42 of file dispatch.hpp.
|
strong |
Enumerator | |
---|---|
DICTIONARY_ORDERED | |
NULLABLE | |
MAP_KEYS_SORTED |
Definition at line 70 of file c_interface.hpp.
|
strong |
Runtime identifier of arrow data types, usually associated with raw bytes with the associated value.
Definition at line 155 of file data_type.hpp.
|
strong |
Specifies the ownership model when passing Arrow data to another system.
Definition at line 80 of file c_interface.hpp.
|
inline |
Definition at line 213 of file data_type.hpp.
|
nodiscardconstexpr |
Check if all elements of a range or std::optional<range> are valid by caling their bool operator.
If the type is nullptr, it returns true. If the std::optional does not have a value, it returns true.
Definition at line 333 of file arrow_array_schema_utils.hpp.
|
nodiscardconstexpr |
|
nodiscard |
|
nodiscard |
|
nodiscard |
|
nodiscard |
|
nodiscard |
|
constexpr |
arrow_traits
Definition at line 764 of file data_type.hpp.
|
constexpr |
arrow_traits
Definition at line 772 of file data_type.hpp.
|
nodiscard |
|
nodiscard |
function to create a sparrow array from arbitrary nested combinations of ranges, tuples, and nullable types, variants.
Have a look at the buider documentation for more information.
Definition at line 76 of file builder.hpp.
|
nodiscardconstexprnoexcept |
Reverses the bytes in the given integer value.
T | The type of the integer value. |
value | The integer value to reverse. |
Definition at line 32 of file bit.hpp.
|
constexpr |
Definition at line 83 of file format.hpp.
|
inlinenodiscard |
Create a deep copy of the source ArrowArray.
The buffers, children and dictionary are deep copied.
Definition at line 163 of file arrow_array.hpp.
SPARROW_API void sparrow::copy_array | ( | const ArrowArray & | source_array, |
const ArrowSchema & | source_schema, | ||
ArrowArray & | target ) |
Fill the target ArrowArray with a deep copy of the data from the source ArrowArray.
|
inlinenodiscard |
Deep copy an ArrowSchema
.
source | The source ArrowSchema . |
ArrowSchema
. Definition at line 174 of file arrow_schema.hpp.
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
.
|
constexpr |
Definition at line 780 of file data_type.hpp.
|
constexpr |
data_type
that should be associated with the provided type. The deduction will be based on the size of the type. Calling this function with unsupported sizes will not compile. Definition at line 428 of file data_type.hpp.
|
constexpr |
data_type
that should be associated with the provided type. The deduction will be based on the size of the type. Calling this function with unsupported sizes will not compile. Definition at line 449 of file data_type.hpp.
|
constexpr |
Definition at line 603 of file data_type.hpp.
|
constexpr |
Definition at line 580 of file data_type.hpp.
|
constexpr |
Definition at line 497 of file data_type.hpp.
SPARROW_API void sparrow::empty_release_arrow_array | ( | ArrowArray * | array | ) |
Empty release function to use for the ArrowArray.release
member.
Should be used for view of ArrowArray.
SPARROW_API void sparrow::empty_release_arrow_schema | ( | ArrowSchema * | schema | ) |
Empty release function to use for the ArrowSchema.release
member.
Should be used for view of ArrowSchema.
validity_bitmap sparrow::ensure_validity_bitmap | ( | std::size_t | size, |
R && | validity_input ) |
Definition at line 183 of file dynamic_bitset.hpp.
ArrowArray sparrow::extract_arrow_array | ( | A && | a | ) |
Extracts the internal ArrowArray structure from the given Array or typed layout.
After this call, the user is responsible for the management of the returned ArrowArray.
std::runtime_error | If a does not own its internal ArrowSchema before this call. |
a | An array or a typed layout. |
Definition at line 79 of file array.hpp.
ArrowSchema sparrow::extract_arrow_schema | ( | A && | a | ) |
Extracts the internal ArrowSchema structure from the given array or typed layout.
After this call, the user is responsible for the management of the returned ArrowSchema.
std::runtime_error | If a does not own its internal ArrowSchema before this call. |
a | An array or a typed layout. |
Definition at line 85 of file array.hpp.
std::pair< ArrowArray, ArrowSchema > sparrow::extract_arrow_structures | ( | A && | a | ) |
Extracts the internal ArrowArrays and ArrowSchema structures from the given array or typed layout.
After this call, the user is responsible for the management of the returned ArrowArray and ArrowSchema.
std::runtime_error | If a does not own its internal ArrowArray and ArrowSchema before this call. |
a | An array or a typed layout. |
Definition at line 91 of file array.hpp.
void sparrow::fill_arrow_array | ( | ArrowArray & | array, |
int64_t | length, | ||
int64_t | null_count, | ||
int64_t | offset, | ||
B | buffers, | ||
size_t | n_children, | ||
ArrowArray ** | children, | ||
ArrowArray * | dictionary ) |
Fill an ArrowArray
object.
B | Value, reference or rvalue of std::vector<sparrow::buffer<uint8_t>> |
array | The ArrowArray to fill. |
length | The logical length of the array (i.e. its number of items). Must be 0 or positive. |
null_count | The number of null items in the array. May be -1 if not yet computed. Must be 0 or positive otherwise. |
offset | The logical offset inside the array (i.e. the number of items from the physical start of the buffers). Must be 0 or positive. |
buffers | Vector of sparrow::buffer<uint8_t> . |
children | Pointer to a sequence of ArrowArray pointers or nullptr . Must be nullptr if n_children is 0 . |
dictionary | ArrowArray pointer or nullptr . |
Definition at line 84 of file arrow_array.hpp.
void sparrow::fill_arrow_schema | ( | ArrowSchema & | schema, |
F | format, | ||
N | name, | ||
M | metadata, | ||
std::optional< ArrowFlag > | flags, | ||
int64_t | n_children, | ||
ArrowSchema ** | children, | ||
ArrowSchema * | dictionary ) |
Definition at line 81 of file arrow_schema.hpp.
|
inline |
data_type::NA
if we couldnt find a matching data_type. Definition at line 232 of file data_type.hpp.
ArrowArray * sparrow::get_arrow_array | ( | A & | a | ) |
Returns a pointer to the internal ArrowArray of the given array or layout.
a | An Array or a typed layout. |
Definition at line 60 of file array.hpp.
|
nodiscard |
ArrowSchema * sparrow::get_arrow_schema | ( | A & | a | ) |
Returns a pointer to the internal ArrowSchema of the given array or layout.
a | An Array or a typed layout. |
Definition at line 66 of file array.hpp.
std::pair< ArrowArray *, ArrowSchema * > sparrow::get_arrow_structures | ( | A & | a | ) |
Returns pointers to the internal ArrowArray and ArrowSchema of the given Array or layout.
a | An Array or a typed layout. |
Definition at line 72 of file array.hpp.
|
nodiscard |
|
nodiscardconstexpr |
Get a raw pointer from a smart pointer, a range, an object or a pointer.
T | The type of the pointer to obtain. |
U | The type of the variable. |
var | The variable. |
Definition at line 248 of file arrow_array_schema_utils.hpp.
|
nodiscardconstexpr |
Definition at line 30 of file arrow_array_schema_info_utils.hpp.
|
constexpr |
|
constexprnoexcept |
true
if the given value is a valid ArrowFlag
value, false
otherwise. Definition at line 20 of file arrow_flag_utils.hpp.
|
nodiscard |
Creates an ArrowArray
.
B | Value, reference or rvalue of std::vector<sparrow::buffer<uint8_t>> |
length | The logical length of the array (i.e. its number of items). Must be 0 or positive. |
null_count | The number of null items in the array. May be -1 if not yet computed. Must be 0 or positive otherwise. |
offset | The logical offset inside the array (i.e. the number of items from the physical start of the buffers). Must be 0 or positive. |
buffers | Vector of sparrow::buffer<uint8_t> . |
children | Pointer to a sequence of ArrowArray pointers or nullptr. Must be nullptr if n_children is 0 . |
dictionary | ArrowArray pointer or nullptr . |
ArrowArray
. Definition at line 115 of file arrow_array.hpp.
|
nodiscard |
Creates an ArrowSchema
owned by a unique_ptr
and holding the provided data.
F | Value, reference or rvalue of arrow_schema_private_data::FormatType |
N | Value, reference or rvalue of arrow_schema_private_data::NameType |
M | Value, reference or rvalue of arrow_schema_private_data::MetadataType |
format | A mandatory, null-terminated, UTF8-encoded string describing the data type. If the data type is nested, child types are not encoded here but in the ArrowSchema.children structures. |
name | An optional, null-terminated, UTF8-encoded string of the field or array name. This is mainly used to reconstruct child fields of nested types. |
metadata | An optional, binary string describing the type’s metadata. If the data type is nested, the metadata for child types are not encoded here but in the ArrowSchema.children structures. |
flags | A bitfield of flags enriching the type description. Its value is computed by OR’ing together the flag values. |
children | Pointer to a sequence of ArrowSchema pointers or nullptr . Must be nullptr if n_children is 0 . |
dictionary | Pointer to an ArrowSchema . Must be present if the ArrowSchema represents a dictionary-encoded type. Must be nullptr otherwise. |
ArrowSchema
unique pointer. Definition at line 126 of file arrow_schema.hpp.
auto sparrow::make_buffer_adaptor | ( | FromBufferRef & | buf | ) |
cloning_ptr< T > sparrow::make_cloning_ptr | ( | Args &&... | args | ) |
|
inlinenodiscard |
Definition at line 136 of file arrow_array.hpp.
|
inline |
Definition at line 152 of file arrow_schema.hpp.
|
constexpr |
|
nodiscard |
|
nodiscard |
|
constexpr |
Definition at line 72 of file format.hpp.
|
inlinenodiscard |
Moves the content of source into a stack-allocated array, and reset the source to an empty ArrowArray.
Definition at line 174 of file arrow_array.hpp.
|
inlinenodiscard |
Moves the content of source into a stack-allocated array, and reset the source to an empty ArrowArray.
Definition at line 185 of file arrow_array.hpp.
|
inline |
Moves the content of source into a stack-allocated array, and reset the source to an empty ArrowSchema.
Definition at line 185 of file arrow_schema.hpp.
|
inline |
Moves the content of source into a stack-allocated array, and reset the source to an empty ArrowSchema.
Definition at line 196 of file arrow_schema.hpp.
|
nodiscardconstexpr |
|
inlineconstexpr |
SPARROW_API std::size_t sparrow::num_bytes_for_decimal | ( | const char * | format | ) |
|
nodiscard |
Get the number of bytes for a fixed width binary layout from the ArrowArray format string.
Example: w:42 -> 42 bytes w:1 -> 1 bytes
format | the format string |
std::invalid_argument | if no conversion could be performed. |
std::out_of_range | if the converted value would fall out of the range of the result type or if the underlying function (std::strtoul or std::strtoull) sets errno to ERANGE. |
|
nodiscard |
|
inline |
Definition at line 93 of file large_int.hpp.
|
constexprnoexcept |
Definition at line 488 of file memory.hpp.
|
constexprnoexcept |
|
constexprnoexcept |
|
constexprnoexcept |
Definition at line 716 of file nullable.hpp.
|
constexpr |
Definition at line 68 of file vector_view.hpp.
|
constexpr |
Definition at line 62 of file vector_view.hpp.
bool sparrow::operator== | ( | const any_allocator< T > & | lhs, |
const any_allocator< T > & | rhs ) |
SPARROW_API bool sparrow::operator== | ( | const array & | lhs, |
const array & | rhs ) |
bool sparrow::operator== | ( | const array_crtp_base< D > & | lhs, |
const array_crtp_base< D > & | rhs ) |
Checks if the contents of lhs and rhs are equal, that is, they have the same number of elements and each element in lhs compares equal with the element in rhs at the same position.
lhs | the first array to compare. |
rhs | the second array to compare. |
Definition at line 460 of file array_base.hpp.
bool sparrow::operator== | ( | const bitset_reference< B > & | lhs, |
bool | rhs ) |
Definition at line 186 of file bitset_reference.hpp.
bool sparrow::operator== | ( | const bitset_reference< B1 > & | lhs, |
const bitset_reference< B2 > & | rhs ) |
Definition at line 180 of file bitset_reference.hpp.
|
constexprnoexcept |
Definition at line 1086 of file buffer.hpp.
bool sparrow::operator== | ( | const buffer_view< T > & | lhs, |
const buffer_view< T > & | rhs ) |
|
constexprnoexcept |
Definition at line 481 of file memory.hpp.
|
constexprnoexcept |
Definition at line 467 of file memory.hpp.
|
inline |
Definition at line 38 of file interval_types.hpp.
bool sparrow::operator== | ( | const dictionary_encoded_array< IT > & | lhs, |
const dictionary_encoded_array< IT > & | rhs ) |
Definition at line 468 of file dictionary_encoded_array.hpp.
SPARROW_API bool sparrow::operator== | ( | const list_value & | lhs, |
const list_value & | rhs ) |
|
inline |
Definition at line 54 of file interval_types.hpp.
SPARROW_API bool sparrow::operator== | ( | const null_array & | lhs, |
const null_array & | rhs ) |
Definition at line 147 of file data_type.hpp.
|
constexprnoexcept |
Definition at line 722 of file nullable.hpp.
|
constexprnoexcept |
Definition at line 710 of file nullable.hpp.
SPARROW_API bool sparrow::operator== | ( | const record_batch & | lhs, |
const record_batch & | rhs ) |
Compares the content of two record_batch objects.
lhs | the first record_batch to compare |
rhs | the second record_batch to compare |
true
if the contents of both record_batch are equal, false
otherwise. SPARROW_API bool sparrow::operator== | ( | const run_end_encoded_array & | lhs, |
const run_end_encoded_array & | rhs ) |
SPARROW_API bool sparrow::operator== | ( | const struct_value & | lhs, |
const struct_value & | rhs ) |
bool sparrow::operator== | ( | const union_array_crtp_base< D > & | lhs, |
const union_array_crtp_base< D > & | rhs ) |
Definition at line 495 of file union_array.hpp.
|
constexpr |
Definition at line 56 of file vector_view.hpp.
|
constexpr |
Definition at line 50 of file vector_view.hpp.
sparrow::overloaded | ( | Ts... | ) | -> overloaded< Ts... > |
bool sparrow::owns_arrow_array | ( | const A & | a | ) |
Returns true
if the given layout or array has ownership of its internal ArrowArray.
a | An array or a typed layout object. |
true
if a
owns its internal ArrowArray, false
otherwise. Definition at line 48 of file array.hpp.
bool sparrow::owns_arrow_schema | ( | const A & | a | ) |
Returns true
if the given layout or array has ownership of its internal ArrowSchema.
a | An array or a typed layout object. |
true
if a
owns its internal ArrowSchema, false
otherwise. Definition at line 54 of file array.hpp.
|
nodiscard |
|
nodiscard |
Definition at line 38 of file ranges.hpp.
|
nodiscard |
SPARROW_API void sparrow::release_arrow_array | ( | ArrowArray * | array | ) |
Release function to use for the ArrowArray.release
member.
SPARROW_API void sparrow::release_arrow_schema | ( | ArrowSchema * | schema | ) |
Release function to use for the ArrowSchema.release
member.
void sparrow::release_common_arrow | ( | T & | t | ) |
Release the children and dictionnary of an ArrowArray
or ArrowSchema
.
T | ArrowArray or ArrowSchema |
t | The ArrowArray or ArrowSchema to release. |
Definition at line 178 of file arrow_array_schema_utils.hpp.
|
nodiscardconstexpr |
Get the size of a range, a tuple or an optional.
If the range is a sized range, the size is obtained by calling std::ranges::size()
. If the range is a tuple, the size is obtained by calling tuple_size_v. If the optional has a value, the size is obtained by calling ssize() on the value.
T | The type of the value . |
value | The value. |
value
. Definition at line 220 of file arrow_array_schema_utils.hpp.
|
nodiscard |
SPARROW_API void sparrow::swap | ( | ArrowArray & | lhs, |
ArrowArray & | rhs ) |
SPARROW_API void sparrow::swap | ( | ArrowSchema & | lhs, |
ArrowSchema & | rhs ) |
Swaps the contents of the two ArrowSchema objects.
|
noexcept |
Definition at line 460 of file memory.hpp.
|
constexprnoexcept |
Definition at line 704 of file nullable.hpp.
|
constexpr |
Converts a vector of ArrowFlag values to a bitfield of ArrowFlag values.
Definition at line 58 of file arrow_flag_utils.hpp.
|
nodiscardconstexprnoexcept |
|
constexpr |
Definition at line 71 of file private_data.hpp.
|
nodiscardconstexpr |
Create a vector of pointers to elements from a std::optional<range>.
Requirement: The provided range must own it's elements.
T | The type of the pointers to obtain. |
Optional | The optional type. |
Allocator | The allocator type. |
optional | The optional range. |
Definition at line 303 of file arrow_array_schema_utils.hpp.
|
nodiscardconstexpr |
Create a vector of pointers to elements from a range.
Requirement: The provided range must own it's elements.
T | The type of the pointers to obtain. |
Range | The range type. |
Allocator | The allocator type. |
range | The range. |
Definition at line 286 of file arrow_array_schema_utils.hpp.
|
nodiscardconstexpr |
Create a vector of pointers to elements of a tuple.
Types of the tuple can be value_ptr, smart pointers, ranges, objects or pointers. The type of the elements can be different. E.g: std::tuple<value_ptr<int>, std::unique_ptr<char>, double>. Casting is used to convert the pointers to the desired type.
T | The type of the pointers to obtain. |
Tuple | The tuple type. |
Allocator | The allocator type. |
tuple | The tuple. |
Definition at line 314 of file arrow_array_schema_utils.hpp.
|
constexpr |
|
constexpr |
|
constexpr |
Converts a bitfield of ArrowFlag values to a vector of ArrowFlag values.
Definition at line 37 of file arrow_flag_utils.hpp.
T & sparrow::unwrap_array | ( | array_wrapper & | ar | ) |
const T & sparrow::unwrap_array | ( | const array_wrapper & | ar | ) |
Definition at line 274 of file array_wrapper.hpp.
|
inlinenodiscard |
true
if the format of an ArrowArray
for a given data type is valid, false
otherwise. Definition at line 24 of file arrow_array_schema_info_utils.hpp.
|
nodiscard |
Definition at line 45 of file dispatch.hpp.
|
staticconstexpr |
Type list of every C++ representation types supported by default, in order matching data_type
related values.
Definition at line 669 of file data_type.hpp.
|
staticconstexpr |
Type list of every C++ representation types supported by default, in order matching data_type
related values.
Definition at line 682 of file data_type.hpp.
|
staticconstexpr |
Definition at line 27 of file date_array.hpp.
|
inlineconstexpr |
Useful shortcut value to specify non-owning handled Arrow data.
Definition at line 102 of file c_interface.hpp.
|
staticconstexpr |
Definition at line 29 of file duration_array.hpp.
|
staticconstexpr |
Definition at line 29 of file interval_array.hpp.
|
constexpr |
Checks whether T is a big_binary_array type.
Definition at line 156 of file variable_size_binary_array.hpp.
|
constexpr |
Checks whether T is a big_list_array type.
Definition at line 64 of file list_array.hpp.
|
constexpr |
Checks whether T is a big_list_view_array type.
Definition at line 76 of file list_array.hpp.
|
constexpr |
Checks whether T is a big_string_array type.
Definition at line 144 of file variable_size_binary_array.hpp.
|
constexpr |
Checks whether T is a binary_array type.
Definition at line 150 of file variable_size_binary_array.hpp.
|
constexpr |
Checks whether T is a date_array type.
Definition at line 63 of file date_array.hpp.
|
constexpr |
Definition at line 106 of file decimal_array.hpp.
|
constexpr |
Definition at line 59 of file decimal.hpp.
|
constexpr |
Checks whether T is a dense_union_array type.
Definition at line 63 of file union_array.hpp.
|
constexpr |
Checks whether T is a dictionary_encoded_array type.
Definition at line 91 of file dictionary_encoded_array.hpp.
|
constexpr |
Checks whether T is a duration_array type.
Definition at line 67 of file duration_array.hpp.
|
constexpr |
Checks whether T is a fixed_sized_list_array type.
Definition at line 82 of file list_array.hpp.
|
constexpr |
Definition at line 86 of file large_int.hpp.
|
constexpr |
Checks whether T is a interval_array type.
Definition at line 66 of file interval_array.hpp.
|
constexpr |
Checks whether T is a list_array type.
Definition at line 58 of file list_array.hpp.
|
constexpr |
Checks whether T is a list_view_array type.
Definition at line 70 of file list_array.hpp.
|
constexpr |
Definition at line 809 of file buffer.hpp.
|
constexpr |
Checks whether T is a null_array type.
Definition at line 70 of file null_array.hpp.
|
inlineconstexpr |
Definition at line 60 of file nullable.hpp.
|
constexpr |
Checkes whether T is a primitive_array type.
Definition at line 58 of file primitive_array.hpp.
|
constexpr |
Checks whether T is a run_end_encoded_array type.
Definition at line 32 of file run_end_encoded_array.hpp.
|
constexpr |
Checks whether T is a sparse_union_array type.
Definition at line 69 of file union_array.hpp.
|
constexpr |
Checks whether T is a string_array type.
Definition at line 138 of file variable_size_binary_array.hpp.
|
constexpr |
Checks whether T is a struct_array type.
Definition at line 58 of file struct_array.hpp.
|
constexpr |
Checks whether T is a time_array type.
Definition at line 65 of file time_array.hpp.
|
constexpr |
Definition at line 68 of file timestamp_array.hpp.
|
constexpr |
Checks whether T is a variable_size_binary_view_array_impl type.
Definition at line 94 of file variable_size_binary_view_array.hpp.
|
constexpr |
Definition at line 87 of file large_int.hpp.
|
inlineconstexpr |
Definition at line 68 of file builder.hpp.
|
inlineconstexpr |
Useful shortcut value to specify full owning of handled Arrow data.
Definition at line 108 of file c_interface.hpp.
|
constexpr |
Definition at line 25 of file sparrow_version.hpp.
|
constexpr |
Definition at line 23 of file sparrow_version.hpp.
|
constexpr |
Definition at line 24 of file sparrow_version.hpp.
|
constexpr |
Definition at line 19 of file sparrow_version.hpp.
|
constexpr |
Definition at line 20 of file sparrow_version.hpp.
|
constexpr |
Definition at line 21 of file sparrow_version.hpp.
|
staticconstexpr |
Definition at line 27 of file time_array.hpp.
|
staticconstexpr |
Definition at line 28 of file timestamp_concepts.hpp.