17#if defined(__cpp_lib_format)
41 [[nodiscard]]
bool empty()
const;
50 const std::vector<child_ptr>* p_children =
nullptr;
58#if defined(__cpp_lib_format)
61struct std::formatter<
sparrow::struct_value>
63 constexpr auto parse(std::format_parse_context& ctx)
68 SPARROW_API auto format(
const sparrow::struct_value& ar, std::format_context& ctx)
const
69 ->
decltype(ctx.out());
Smart pointer behaving like a copiable std::unique_ptr.
cloning_ptr< array_wrapper > child_ptr
array_traits::value_type value_type
const_reference front() const
array_traits::const_reference const_reference
struct_value(const std::vector< child_ptr > &children, size_type index)
const_reference operator[](size_type i) const
const_reference back() const
SPARROW_API bool operator==(const array &lhs, const array &rhs)
Compares the content of two arrays.
std::ostream & operator<<(std::ostream &stream, T n)
mpl::rename< mpl::transform< detail::array_const_reference_t, all_base_types_t >, nullable_variant > const_reference
mpl::rename< mpl::transform< detail::array_value_type_t, all_base_types_t >, nullable_variant > value_type