STAR
Cal STAR — firmware, DAQ server, and engine design
Loading...
Searching...
No Matches
array Class Reference

#include <toml.hpp>

Inheritance diagram for array:
[legend]
Collaboration diagram for array:
[legend]

Public Types

using value_type = node
using size_type = size_t
using difference_type = ptrdiff_t
using reference = node&
using const_reference = const node&
using iterator = array_iterator
using const_iterator = const_array_iterator

Public Member Functions

TOML_NODISCARD_CTOR TOML_EXPORTED_MEMBER_FUNCTION array () noexcept
TOML_EXPORTED_MEMBER_FUNCTION ~array () noexcept
TOML_NODISCARD_CTOR TOML_EXPORTED_MEMBER_FUNCTION array (const array &)
TOML_NODISCARD_CTOR TOML_EXPORTED_MEMBER_FUNCTION array (array &&other) noexcept
 TOML_CONSTRAINED_TEMPLATE ((sizeof...(ElemTypes) > 0||!std::is_same_v< impl::remove_cvref< ElemType >, array >), typename ElemType, typename... ElemTypes) TOML_NODISCARD_CTOR explicit array(ElemType &&val
TOML_EXPORTED_MEMBER_FUNCTION array & operator= (array &&rhs) noexcept
TOML_CONST_INLINE_GETTER node_type type () const noexcept final
TOML_PURE_GETTER TOML_EXPORTED_MEMBER_FUNCTION bool is_homogeneous (node_type ntype) const noexcept final
TOML_PURE_GETTER TOML_EXPORTED_MEMBER_FUNCTION bool is_homogeneous (node_type ntype, node *&first_nonmatch) noexcept final
TOML_PURE_GETTER TOML_EXPORTED_MEMBER_FUNCTION bool is_homogeneous (node_type ntype, const node *&first_nonmatch) const noexcept final
template<typename ElemType = void>
TOML_PURE_GETTER bool is_homogeneous () const noexcept
TOML_CONST_INLINE_GETTER bool is_table () const noexcept final
TOML_CONST_INLINE_GETTER bool is_array () const noexcept final
TOML_PURE_GETTER bool is_array_of_tables () const noexcept final
TOML_CONST_INLINE_GETTER bool is_value () const noexcept final
TOML_CONST_INLINE_GETTER bool is_string () const noexcept final
TOML_CONST_INLINE_GETTER bool is_integer () const noexcept final
TOML_CONST_INLINE_GETTER bool is_floating_point () const noexcept final
TOML_CONST_INLINE_GETTER bool is_number () const noexcept final
TOML_CONST_INLINE_GETTER bool is_boolean () const noexcept final
TOML_CONST_INLINE_GETTER bool is_date () const noexcept final
TOML_CONST_INLINE_GETTER bool is_time () const noexcept final
TOML_CONST_INLINE_GETTER bool is_date_time () const noexcept final
TOML_CONST_INLINE_GETTER table * as_table () noexcept final
TOML_CONST_INLINE_GETTER array * as_array () noexcept final
TOML_CONST_INLINE_GETTER toml::value< std::string > * as_string () noexcept final
TOML_CONST_INLINE_GETTER toml::value< int64_t > * as_integer () noexcept final
TOML_CONST_INLINE_GETTER toml::value< double > * as_floating_point () noexcept final
TOML_CONST_INLINE_GETTER toml::value< bool > * as_boolean () noexcept final
TOML_CONST_INLINE_GETTER toml::value< date > * as_date () noexcept final
TOML_CONST_INLINE_GETTER toml::value< time > * as_time () noexcept final
TOML_CONST_INLINE_GETTER toml::value< date_time > * as_date_time () noexcept final
TOML_CONST_INLINE_GETTER const table * as_table () const noexcept final
TOML_CONST_INLINE_GETTER const array * as_array () const noexcept final
TOML_CONST_INLINE_GETTER const toml::value< std::string > * as_string () const noexcept final
TOML_CONST_INLINE_GETTER const toml::value< int64_t > * as_integer () const noexcept final
TOML_CONST_INLINE_GETTER const toml::value< double > * as_floating_point () const noexcept final
TOML_CONST_INLINE_GETTER const toml::value< bool > * as_boolean () const noexcept final
TOML_CONST_INLINE_GETTER const toml::value< date > * as_date () const noexcept final
TOML_CONST_INLINE_GETTER const toml::value< time > * as_time () const noexcept final
TOML_CONST_INLINE_GETTER const toml::value< date_time > * as_date_time () const noexcept final
TOML_PURE_INLINE_GETTER node * get (size_t index) noexcept
TOML_PURE_INLINE_GETTER const node * get (size_t index) const noexcept
template<typename ElemType>
TOML_NODISCARD impl::wrap_node< ElemType > * get_as (size_t index) noexcept
template<typename ElemType>
TOML_NODISCARD const impl::wrap_node< ElemType > * get_as (size_t index) const noexcept
TOML_NODISCARD node & operator[] (size_t index) noexcept
TOML_NODISCARD const node & operator[] (size_t index) const noexcept
TOML_NODISCARD TOML_EXPORTED_MEMBER_FUNCTION node & at (size_t index)
TOML_NODISCARD const node & at (size_t index) const
TOML_NODISCARD node & front () noexcept
TOML_NODISCARD const node & front () const noexcept
TOML_NODISCARD node & back () noexcept
TOML_NODISCARD const node & back () const noexcept
TOML_NODISCARD iterator begin () noexcept
TOML_NODISCARD const_iterator begin () const noexcept
TOML_NODISCARD const_iterator cbegin () const noexcept
TOML_NODISCARD iterator end () noexcept
TOML_NODISCARD const_iterator end () const noexcept
TOML_NODISCARD const_iterator cend () const noexcept
template<typename Func>
array & for_each (Func &&visitor) &noexcept(for_each_is_nothrow< Func &&, array & >::value)
template<typename Func>
array && for_each (Func &&visitor) &&noexcept(for_each_is_nothrow< Func &&, array && >::value)
template<typename Func>
const array & for_each (Func &&visitor) const &noexcept(for_each_is_nothrow< Func &&, const array & >::value)
template<typename Func>
const array && for_each (Func &&visitor) const &&noexcept(for_each_is_nothrow< Func &&, const array && >::value)
TOML_NODISCARD bool empty () const noexcept
TOML_NODISCARD size_t size () const noexcept
TOML_NODISCARD size_t max_size () const noexcept
TOML_NODISCARD size_t capacity () const noexcept
TOML_EXPORTED_MEMBER_FUNCTION void reserve (size_t new_capacity)
TOML_EXPORTED_MEMBER_FUNCTION void shrink_to_fit ()
TOML_EXPORTED_MEMBER_FUNCTION void truncate (size_t new_size)
template<typename ElemType>
void resize (size_t new_size, ElemType &&default_init_val, value_flags default_init_flags=preserve_source_value_flags)
TOML_EXPORTED_MEMBER_FUNCTION iterator erase (const_iterator pos) noexcept
TOML_EXPORTED_MEMBER_FUNCTION iterator erase (const_iterator first, const_iterator last) noexcept
TOML_EXPORTED_MEMBER_FUNCTION array & flatten () &
array && flatten () &&
TOML_EXPORTED_MEMBER_FUNCTION array & prune (bool recursive=true) &noexcept
array && prune (bool recursive=true) &&noexcept
TOML_EXPORTED_MEMBER_FUNCTION void pop_back () noexcept
TOML_EXPORTED_MEMBER_FUNCTION void clear () noexcept
template<typename ElemType>
iterator insert (const_iterator pos, ElemType &&val, value_flags flags=preserve_source_value_flags)
template<typename ElemType>
iterator insert (const_iterator pos, size_t count, ElemType &&val, value_flags flags=preserve_source_value_flags)
template<typename Iter>
iterator insert (const_iterator pos, Iter first, Iter last, value_flags flags=preserve_source_value_flags)
template<typename ElemType>
iterator insert (const_iterator pos, std::initializer_list< ElemType > ilist, value_flags flags=preserve_source_value_flags)
template<typename ElemType = void, typename... Args>
iterator emplace (const_iterator pos, Args &&... args)
template<typename ElemType>
iterator replace (const_iterator pos, ElemType &&val, value_flags flags=preserve_source_value_flags)
template<typename ElemType>
void push_back (ElemType &&val, value_flags flags=preserve_source_value_flags)
template<typename ElemType = void, typename... Args>
decltype(auto) emplace_back (Args &&... args)
 TOML_ASYMMETRICAL_EQUALITY_OPS (const array &, const std::initializer_list< T > &, template< typename T >)
 TOML_ASYMMETRICAL_EQUALITY_OPS (const array &, const std::vector< T > &, template< typename T >)

Public Attributes

ElemTypes && vals: array{ std::false_type{}

Private Types

using vector_type = std::vector<impl::node_ptr>
using vector_iterator = typename vector_type::iterator
using const_vector_iterator = typename vector_type::const_iterator
template<typename T, typename Array>
using for_each_elem_ref = impl::copy_cvref<impl::wrap_node<impl::remove_cvref<impl::unwrap_node<T>>>, Array>
template<typename Func, typename Array, typename T>
using can_for_each
template<typename Func, typename Array, typename T>
using can_for_each_nothrow
template<typename Func, typename Array>
using can_for_each_any
template<typename Func, typename Array, typename T>
using for_each_is_nothrow_one
template<typename Func, typename Array>
using for_each_is_nothrow

Private Member Functions

TOML_NODISCARD_CTOR TOML_EXPORTED_MEMBER_FUNCTION array (const impl::array_init_elem *, const impl::array_init_elem *)
TOML_NODISCARD_CTOR array (std::false_type, std::initializer_list< impl::array_init_elem > elems)
TOML_EXPORTED_MEMBER_FUNCTION void preinsertion_resize (size_t idx, size_t count)
TOML_EXPORTED_MEMBER_FUNCTION void insert_at_back (impl::node_ptr &&)
TOML_EXPORTED_MEMBER_FUNCTION vector_iterator insert_at (const_vector_iterator, impl::node_ptr &&)
template<typename T>
void emplace_back_if_not_empty_view (T &&val, value_flags flags)
TOML_NODISCARD TOML_EXPORTED_MEMBER_FUNCTION size_t total_leaf_count () const noexcept
TOML_EXPORTED_MEMBER_FUNCTION void flatten_child (array &&child, size_t &dest_index) noexcept

Static Private Member Functions

template<typename Func, typename Array>
static void do_for_each (Func &&visitor, Array &&arr) noexcept(for_each_is_nothrow< Func &&, Array && >::value)
TOML_NODISCARD static TOML_EXPORTED_STATIC_FUNCTION bool TOML_CALLCONV equal (const array &, const array &) noexcept
template<typename T>
static TOML_NODISCARD bool equal_to_container (const array &lhs, const T &rhs) noexcept

Private Attributes

vector_type elems_

Friends

TOML_NODISCARD friend bool operator== (const array &lhs, const array &rhs) noexcept
TOML_NODISCARD friend bool operator!= (const array &lhs, const array &rhs) noexcept
template<typename T>
TOML_NODISCARD friend bool operator== (const array &lhs, const std::initializer_list< T > &rhs) noexcept
template<typename T>
TOML_NODISCARD friend bool operator== (const array &lhs, const std::vector< T > &rhs) noexcept
std::ostream & operator<< (std::ostream &lhs, const array &rhs)

Detailed Description

Definition at line 6244 of file toml.hpp.

Member Typedef Documentation

◆ can_for_each

template<typename Func, typename Array, typename T>
using array::can_for_each
private
Initial value:
std::disjunction<std::is_invocable<Func, for_each_elem_ref<T, Array>, size_t>,
std::is_invocable<Func, size_t, for_each_elem_ref<T, Array>>,
std::is_invocable<Func, for_each_elem_ref<T, Array>>>

Definition at line 6657 of file toml.hpp.

◆ can_for_each_any

template<typename Func, typename Array>
using array::can_for_each_any
private
Initial value:
std::disjunction<can_for_each<Func, Array, table>,
std::disjunction< std::is_invocable< Func, for_each_elem_ref< T, Array >, size_t >, std::is_invocable< Func, size_t, for_each_elem_ref< T, Array > >, std::is_invocable< Func, for_each_elem_ref< T, Array > > > can_for_each
Definition toml.hpp:6657

Definition at line 6677 of file toml.hpp.

◆ can_for_each_nothrow

template<typename Func, typename Array, typename T>
using array::can_for_each_nothrow
private
Initial value:
std::conditional_t<
std::is_invocable_v<Func, for_each_elem_ref<T, Array>, size_t>,
std::is_nothrow_invocable<Func, for_each_elem_ref<T, Array>, size_t>,
std::conditional_t<
std::is_invocable_v<Func, size_t, for_each_elem_ref<T, Array>>,
std::is_nothrow_invocable<Func, size_t, for_each_elem_ref<T, Array>>,
std::conditional_t<
std::is_invocable_v<Func, for_each_elem_ref<T, Array>>,
std::is_nothrow_invocable<Func, for_each_elem_ref<T, Array>>,
std::false_type>>>

Definition at line 6662 of file toml.hpp.

◆ const_iterator

Definition at line 6613 of file toml.hpp.

◆ const_reference

using array::const_reference = const node&

Definition at line 6294 of file toml.hpp.

◆ const_vector_iterator

using array::const_vector_iterator = typename vector_type::const_iterator
private

Definition at line 6250 of file toml.hpp.

◆ difference_type

using array::difference_type = ptrdiff_t

Definition at line 6292 of file toml.hpp.

◆ for_each_elem_ref

template<typename T, typename Array>
using array::for_each_elem_ref = impl::copy_cvref<impl::wrap_node<impl::remove_cvref<impl::unwrap_node<T>>>, Array>
private

Definition at line 6654 of file toml.hpp.

◆ for_each_is_nothrow

template<typename Func, typename Array>
using array::for_each_is_nothrow
private

◆ for_each_is_nothrow_one

template<typename Func, typename Array, typename T>
using array::for_each_is_nothrow_one
private
Initial value:
std::disjunction<std::negation<can_for_each<Func, Array, T>>,
std::conditional_t< std::is_invocable_v< Func, for_each_elem_ref< T, Array >, size_t >, std::is_nothrow_invocable< Func, for_each_elem_ref< T, Array >, size_t >, std::conditional_t< std::is_invocable_v< Func, size_t, for_each_elem_ref< T, Array > >, std::is_nothrow_invocable< Func, size_t, for_each_elem_ref< T, Array > >, std::conditional_t< std::is_invocable_v< Func, for_each_elem_ref< T, Array > >, std::is_nothrow_invocable< Func, for_each_elem_ref< T, Array > >, std::false_type > > > can_for_each_nothrow
Definition toml.hpp:6662

Definition at line 6688 of file toml.hpp.

◆ iterator

using array::iterator = array_iterator

Definition at line 6611 of file toml.hpp.

◆ reference

using array::reference = node&

Definition at line 6293 of file toml.hpp.

◆ size_type

using array::size_type = size_t

Definition at line 6291 of file toml.hpp.

◆ value_type

using array::value_type = node

Definition at line 6290 of file toml.hpp.

◆ vector_iterator

using array::vector_iterator = typename vector_type::iterator
private

Definition at line 6249 of file toml.hpp.

◆ vector_type

using array::vector_type = std::vector<impl::node_ptr>
private

Definition at line 6248 of file toml.hpp.

Constructor & Destructor Documentation

◆ array() [1/5]

◆ array() [2/5]

TOML_NODISCARD_CTOR array::array ( std::false_type ,
std::initializer_list< impl::array_init_elem > elems )
inlineprivate

Definition at line 6258 of file toml.hpp.

References array(), begin(), and end().

◆ array() [3/5]

◆ ~array()

◆ array() [4/5]

◆ array() [5/5]

TOML_NODISCARD_CTOR TOML_EXPORTED_MEMBER_FUNCTION array::array ( array && other)
noexcept

References array().

Member Function Documentation

◆ as_array() [1/2]

TOML_CONST_INLINE_GETTER const array * array::as_array ( ) const
inlinefinalnoexcept

Definition at line 6489 of file toml.hpp.

References array().

◆ as_array() [2/2]

TOML_CONST_INLINE_GETTER array * array::as_array ( )
inlinefinalnoexcept

Definition at line 6435 of file toml.hpp.

References array().

◆ as_boolean() [1/2]

TOML_CONST_INLINE_GETTER const toml::value< bool > * array::as_boolean ( ) const
inlinefinalnoexcept

Definition at line 6513 of file toml.hpp.

◆ as_boolean() [2/2]

TOML_CONST_INLINE_GETTER toml::value< bool > * array::as_boolean ( )
inlinefinalnoexcept

Definition at line 6459 of file toml.hpp.

◆ as_date() [1/2]

TOML_CONST_INLINE_GETTER const toml::value< date > * array::as_date ( ) const
inlinefinalnoexcept

Definition at line 6519 of file toml.hpp.

◆ as_date() [2/2]

TOML_CONST_INLINE_GETTER toml::value< date > * array::as_date ( )
inlinefinalnoexcept

Definition at line 6465 of file toml.hpp.

◆ as_date_time() [1/2]

TOML_CONST_INLINE_GETTER const toml::value< date_time > * array::as_date_time ( ) const
inlinefinalnoexcept

Definition at line 6531 of file toml.hpp.

◆ as_date_time() [2/2]

TOML_CONST_INLINE_GETTER toml::value< date_time > * array::as_date_time ( )
inlinefinalnoexcept

Definition at line 6477 of file toml.hpp.

◆ as_floating_point() [1/2]

TOML_CONST_INLINE_GETTER const toml::value< double > * array::as_floating_point ( ) const
inlinefinalnoexcept

Definition at line 6507 of file toml.hpp.

◆ as_floating_point() [2/2]

TOML_CONST_INLINE_GETTER toml::value< double > * array::as_floating_point ( )
inlinefinalnoexcept

Definition at line 6453 of file toml.hpp.

◆ as_integer() [1/2]

TOML_CONST_INLINE_GETTER const toml::value< int64_t > * array::as_integer ( ) const
inlinefinalnoexcept

Definition at line 6501 of file toml.hpp.

◆ as_integer() [2/2]

TOML_CONST_INLINE_GETTER toml::value< int64_t > * array::as_integer ( )
inlinefinalnoexcept

Definition at line 6447 of file toml.hpp.

◆ as_string() [1/2]

TOML_CONST_INLINE_GETTER const toml::value< std::string > * array::as_string ( ) const
inlinefinalnoexcept

Definition at line 6495 of file toml.hpp.

◆ as_string() [2/2]

TOML_CONST_INLINE_GETTER toml::value< std::string > * array::as_string ( )
inlinefinalnoexcept

Definition at line 6441 of file toml.hpp.

◆ as_table() [1/2]

TOML_CONST_INLINE_GETTER const table * array::as_table ( ) const
inlinefinalnoexcept

Definition at line 6483 of file toml.hpp.

◆ as_table() [2/2]

TOML_CONST_INLINE_GETTER table * array::as_table ( )
inlinefinalnoexcept

Definition at line 6429 of file toml.hpp.

◆ as_time() [1/2]

TOML_CONST_INLINE_GETTER const toml::value< time > * array::as_time ( ) const
inlinefinalnoexcept

Definition at line 6525 of file toml.hpp.

◆ as_time() [2/2]

TOML_CONST_INLINE_GETTER toml::value< time > * array::as_time ( )
inlinefinalnoexcept

Definition at line 6471 of file toml.hpp.

◆ at() [1/2]

TOML_NODISCARD TOML_EXPORTED_MEMBER_FUNCTION node & array::at ( size_t index)

References TOML_NODISCARD.

◆ at() [2/2]

TOML_NODISCARD const node & array::at ( size_t index) const
inline

Definition at line 6582 of file toml.hpp.

References array().

◆ back() [1/2]

TOML_NODISCARD const node & array::back ( ) const
inlinenoexcept

Definition at line 6606 of file toml.hpp.

References elems_.

◆ back() [2/2]

TOML_NODISCARD node & array::back ( )
inlinenoexcept

Definition at line 6600 of file toml.hpp.

References elems_.

◆ begin() [1/2]

TOML_NODISCARD const_iterator array::begin ( ) const
inlinenoexcept

Definition at line 6622 of file toml.hpp.

References elems_.

◆ begin() [2/2]

TOML_NODISCARD iterator array::begin ( )
inlinenoexcept

Definition at line 6616 of file toml.hpp.

References elems_.

Referenced by array().

◆ capacity()

TOML_NODISCARD size_t array::capacity ( ) const
inlinenoexcept

◆ cbegin()

TOML_NODISCARD const_iterator array::cbegin ( ) const
inlinenoexcept

Definition at line 6628 of file toml.hpp.

References elems_.

Referenced by replace().

◆ cend()

TOML_NODISCARD const_iterator array::cend ( ) const
inlinenoexcept

Definition at line 6646 of file toml.hpp.

References elems_.

Referenced by replace(), and resize().

◆ clear()

TOML_EXPORTED_MEMBER_FUNCTION void array::clear ( )
noexcept

References clear().

Referenced by clear(), and resize().

◆ do_for_each()

template<typename Func, typename Array>
void array::do_for_each ( Func && visitor,
Array && arr )
inlinestaticprivatenoexcept

Definition at line 6703 of file toml.hpp.

References TOML_SA_NODE_TYPE_LIST, and value().

Referenced by for_each(), for_each(), for_each(), and for_each().

◆ emplace()

template<typename ElemType = void, typename... Args>
iterator array::emplace ( const_iterator pos,
Args &&... args )
inline

Definition at line 7022 of file toml.hpp.

References insert_at(), TOML_SA_UNWRAPPED_NODE_TYPE_LIST, and type().

◆ emplace_back()

template<typename ElemType = void, typename... Args>
decltype(auto) array::emplace_back ( Args &&... args)
inline

Definition at line 7060 of file toml.hpp.

References elems_, insert_at_back(), ptr, and TOML_SA_UNWRAPPED_NODE_TYPE_LIST.

◆ emplace_back_if_not_empty_view()

template<typename T>
void array::emplace_back_if_not_empty_view ( T && val,
value_flags flags )
inlineprivate

Definition at line 6272 of file toml.hpp.

References insert_at_back(), is_node_view, and value_flags::value_flags.

Referenced by push_back().

◆ empty()

TOML_NODISCARD bool array::empty ( ) const
inlinenoexcept

Definition at line 6859 of file toml.hpp.

References elems_.

◆ end() [1/2]

TOML_NODISCARD const_iterator array::end ( ) const
inlinenoexcept

Definition at line 6640 of file toml.hpp.

References elems_.

◆ end() [2/2]

TOML_NODISCARD iterator array::end ( )
inlinenoexcept

Definition at line 6634 of file toml.hpp.

References elems_.

Referenced by array().

◆ equal()

TOML_NODISCARD static TOML_EXPORTED_STATIC_FUNCTION bool TOML_CALLCONV array::equal ( const array & ,
const array &  )
staticprivatenoexcept

References array(), TOML_CALLCONV, and TOML_NODISCARD.

Referenced by operator!=, and operator==.

◆ equal_to_container()

template<typename T>
TOML_NODISCARD bool array::equal_to_container ( const array & lhs,
const T & rhs )
inlinestaticprivatenoexcept

Definition at line 7100 of file toml.hpp.

References array(), and rhs.

Referenced by operator==, and operator==.

◆ erase() [1/2]

◆ erase() [2/2]

◆ flatten() [1/2]

TOML_EXPORTED_MEMBER_FUNCTION array & array::flatten ( ) &

References array().

◆ flatten() [2/2]

array && array::flatten ( ) &&
inline

Definition at line 6916 of file toml.hpp.

References array(), and flatten().

◆ flatten_child()

TOML_EXPORTED_MEMBER_FUNCTION void array::flatten_child ( array && child,
size_t & dest_index )
privatenoexcept

References array(), and flatten_child().

Referenced by flatten_child().

◆ for_each() [1/4]

template<typename Func>
array && array::for_each ( Func && visitor) &&
inlinenoexcept

Definition at line 6835 of file toml.hpp.

References array(), and do_for_each().

◆ for_each() [2/4]

template<typename Func>
array & array::for_each ( Func && visitor) &
inlinenoexcept

Definition at line 6827 of file toml.hpp.

References array(), and do_for_each().

◆ for_each() [3/4]

template<typename Func>
const array && array::for_each ( Func && visitor) const &&
inlinenoexcept

Definition at line 6851 of file toml.hpp.

References array(), and do_for_each().

◆ for_each() [4/4]

template<typename Func>
const array & array::for_each ( Func && visitor) const &
inlinenoexcept

Definition at line 6843 of file toml.hpp.

References array(), and do_for_each().

◆ front() [1/2]

TOML_NODISCARD const node & array::front ( ) const
inlinenoexcept

Definition at line 6594 of file toml.hpp.

References elems_.

◆ front() [2/2]

TOML_NODISCARD node & array::front ( )
inlinenoexcept

Definition at line 6588 of file toml.hpp.

References elems_.

◆ get() [1/2]

TOML_PURE_INLINE_GETTER const node * array::get ( size_t index) const
inlinenoexcept

Definition at line 6543 of file toml.hpp.

References array().

◆ get() [2/2]

TOML_PURE_INLINE_GETTER node * array::get ( size_t index)
inlinenoexcept

Definition at line 6537 of file toml.hpp.

References elems_.

Referenced by get_as().

◆ get_as() [1/2]

template<typename ElemType>
TOML_NODISCARD const impl::wrap_node< ElemType > * array::get_as ( size_t index) const
inlinenoexcept

Definition at line 6559 of file toml.hpp.

References array(), and get_as().

◆ get_as() [2/2]

template<typename ElemType>
TOML_NODISCARD impl::wrap_node< ElemType > * array::get_as ( size_t index)
inlinenoexcept

Definition at line 6550 of file toml.hpp.

References get().

Referenced by get_as().

◆ insert() [1/4]

template<typename ElemType>
iterator array::insert ( const_iterator pos,
ElemType && val,
value_flags flags = preserve_source_value_flags )
inline

Definition at line 6936 of file toml.hpp.

References end(), insert(), insert_at(), is_node_view, preserve_source_value_flags, and value_flags::value_flags.

Referenced by insert().

◆ insert() [2/4]

template<typename Iter>
iterator array::insert ( const_iterator pos,
Iter first,
Iter last,
value_flags flags = preserve_source_value_flags )
inline

◆ insert() [3/4]

template<typename ElemType>
iterator array::insert ( const_iterator pos,
size_t count,
ElemType && val,
value_flags flags = preserve_source_value_flags )
inline

◆ insert() [4/4]

template<typename ElemType>
iterator array::insert ( const_iterator pos,
std::initializer_list< ElemType > ilist,
value_flags flags = preserve_source_value_flags )
inline

Definition at line 7014 of file toml.hpp.

References insert(), preserve_source_value_flags, and value_flags::value_flags.

◆ insert_at()

TOML_EXPORTED_MEMBER_FUNCTION vector_iterator array::insert_at ( const_vector_iterator ,
impl::node_ptr &&  )
private

Referenced by emplace(), and insert().

◆ insert_at_back()

TOML_EXPORTED_MEMBER_FUNCTION void array::insert_at_back ( impl::node_ptr && )
private

◆ is_array()

TOML_CONST_INLINE_GETTER bool array::is_array ( ) const
inlinefinalnoexcept

Definition at line 6363 of file toml.hpp.

◆ is_array_of_tables()

TOML_PURE_GETTER bool array::is_array_of_tables ( ) const
inlinefinalnoexcept

Definition at line 6369 of file toml.hpp.

References is_homogeneous().

◆ is_boolean()

TOML_CONST_INLINE_GETTER bool array::is_boolean ( ) const
inlinefinalnoexcept

Definition at line 6405 of file toml.hpp.

◆ is_date()

TOML_CONST_INLINE_GETTER bool array::is_date ( ) const
inlinefinalnoexcept

Definition at line 6411 of file toml.hpp.

◆ is_date_time()

TOML_CONST_INLINE_GETTER bool array::is_date_time ( ) const
inlinefinalnoexcept

Definition at line 6423 of file toml.hpp.

◆ is_floating_point()

TOML_CONST_INLINE_GETTER bool array::is_floating_point ( ) const
inlinefinalnoexcept

Definition at line 6393 of file toml.hpp.

◆ is_homogeneous() [1/4]

template<typename ElemType = void>
TOML_PURE_GETTER bool array::is_homogeneous ( ) const
inlinenoexcept

Definition at line 6347 of file toml.hpp.

References is_homogeneous(), TOML_SA_UNWRAPPED_NODE_TYPE_LIST, and type().

◆ is_homogeneous() [2/4]

TOML_PURE_GETTER TOML_EXPORTED_MEMBER_FUNCTION bool array::is_homogeneous ( node_type ntype) const
finalnoexcept

◆ is_homogeneous() [3/4]

TOML_PURE_GETTER TOML_EXPORTED_MEMBER_FUNCTION bool array::is_homogeneous ( node_type ntype,
const node *& first_nonmatch ) const
finalnoexcept

References TOML_PURE_GETTER.

◆ is_homogeneous() [4/4]

TOML_PURE_GETTER TOML_EXPORTED_MEMBER_FUNCTION bool array::is_homogeneous ( node_type ntype,
node *& first_nonmatch )
finalnoexcept

◆ is_integer()

TOML_CONST_INLINE_GETTER bool array::is_integer ( ) const
inlinefinalnoexcept

Definition at line 6387 of file toml.hpp.

◆ is_number()

TOML_CONST_INLINE_GETTER bool array::is_number ( ) const
inlinefinalnoexcept

Definition at line 6399 of file toml.hpp.

◆ is_string()

TOML_CONST_INLINE_GETTER bool array::is_string ( ) const
inlinefinalnoexcept

Definition at line 6381 of file toml.hpp.

◆ is_table()

TOML_CONST_INLINE_GETTER bool array::is_table ( ) const
inlinefinalnoexcept

Definition at line 6357 of file toml.hpp.

◆ is_time()

TOML_CONST_INLINE_GETTER bool array::is_time ( ) const
inlinefinalnoexcept

Definition at line 6417 of file toml.hpp.

◆ is_value()

TOML_CONST_INLINE_GETTER bool array::is_value ( ) const
inlinefinalnoexcept

Definition at line 6375 of file toml.hpp.

◆ max_size()

TOML_NODISCARD size_t array::max_size ( ) const
inlinenoexcept

Definition at line 6871 of file toml.hpp.

References elems_.

◆ operator=()

TOML_EXPORTED_MEMBER_FUNCTION array & array::operator= ( array && rhs)
noexcept

◆ operator[]() [1/2]

TOML_NODISCARD const node & array::operator[] ( size_t index) const
inlinenoexcept

Definition at line 6572 of file toml.hpp.

References elems_.

◆ operator[]() [2/2]

TOML_NODISCARD node & array::operator[] ( size_t index)
inlinenoexcept

Definition at line 6566 of file toml.hpp.

References elems_.

◆ pop_back()

TOML_EXPORTED_MEMBER_FUNCTION void array::pop_back ( )
noexcept

◆ preinsertion_resize()

TOML_EXPORTED_MEMBER_FUNCTION void array::preinsertion_resize ( size_t idx,
size_t count )
private

References count(), and TOML_EXPORTED_MEMBER_FUNCTION.

Referenced by insert(), and insert().

◆ prune() [1/2]

array && array::prune ( bool recursive = true) &&
inlinenoexcept

Definition at line 6924 of file toml.hpp.

References array(), and prune().

◆ prune() [2/2]

TOML_EXPORTED_MEMBER_FUNCTION array & array::prune ( bool recursive = true) &
noexcept

References array().

Referenced by prune().

◆ push_back()

template<typename ElemType>
void array::push_back ( ElemType && val,
value_flags flags = preserve_source_value_flags )
inline

◆ replace()

template<typename ElemType>
iterator array::replace ( const_iterator pos,
ElemType && val,
value_flags flags = preserve_source_value_flags )
inline

◆ reserve()

TOML_EXPORTED_MEMBER_FUNCTION void array::reserve ( size_t new_capacity)

◆ resize()

◆ shrink_to_fit()

TOML_EXPORTED_MEMBER_FUNCTION void array::shrink_to_fit ( )

◆ size()

TOML_NODISCARD size_t array::size ( ) const
inlinenoexcept

Definition at line 6865 of file toml.hpp.

References elems_.

◆ TOML_ASYMMETRICAL_EQUALITY_OPS() [1/2]

array::TOML_ASYMMETRICAL_EQUALITY_OPS ( const array & ,
const std::initializer_list< T > & ,
template< typename T >  )

References array(), and TOML_NODISCARD.

◆ TOML_ASYMMETRICAL_EQUALITY_OPS() [2/2]

array::TOML_ASYMMETRICAL_EQUALITY_OPS ( const array & ,
const std::vector< T > & ,
template< typename T >  )

References array().

◆ TOML_CONSTRAINED_TEMPLATE()

array::TOML_CONSTRAINED_TEMPLATE ( (sizeof...(ElemTypes) > 0||!std::is_same_v< impl::remove_cvref< ElemType >, array >) ,
typename ElemType ,
typename... ElemTypes ) &&

◆ total_leaf_count()

TOML_NODISCARD TOML_EXPORTED_MEMBER_FUNCTION size_t array::total_leaf_count ( ) const
privatenoexcept

◆ truncate()

TOML_EXPORTED_MEMBER_FUNCTION void array::truncate ( size_t new_size)

Referenced by resize().

◆ type()

◆ operator!=

TOML_NODISCARD friend bool operator!= ( const array & lhs,
const array & rhs )
friend

Definition at line 7131 of file toml.hpp.

References array(), equal(), and rhs.

◆ operator<<

std::ostream & operator<< ( std::ostream & lhs,
const array & rhs )
friend

Definition at line 7154 of file toml.hpp.

References array(), and rhs.

◆ operator== [1/3]

TOML_NODISCARD friend bool operator== ( const array & lhs,
const array & rhs )
friend

Definition at line 7125 of file toml.hpp.

References array(), equal(), and rhs.

◆ operator== [2/3]

template<typename T>
TOML_NODISCARD friend bool operator== ( const array & lhs,
const std::initializer_list< T > & rhs )
friend

Definition at line 7138 of file toml.hpp.

References array(), equal_to_container(), and rhs.

◆ operator== [3/3]

template<typename T>
TOML_NODISCARD friend bool operator== ( const array & lhs,
const std::vector< T > & rhs )
friend

Definition at line 7146 of file toml.hpp.

References array(), equal_to_container(), and rhs.

Member Data Documentation

◆ elems_

◆ vals

ElemTypes&& array::vals

Definition at line 6315 of file toml.hpp.


The documentation for this class was generated from the following file:
  • daq-server/diablo_server/lib/include/toml++/toml.hpp