acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
block_array< TYPE, t_iSize, t_earray, ARG_TYPE > Class Template Reference
Inheritance diagram for block_array< TYPE, t_iSize, t_earray, ARG_TYPE >:
array_range< TYPE, ARG_TYPE > block_range< TYPE * > range< TYPE * >

Public Types

using ARRAY_RANGE = ::array_range < TYPE, ARG_TYPE >
using BASE_RANGE = ::array_range < TYPE, ARG_TYPE >
using RAW_BASE_ARRAY = block_array
using BASE_RAW_RANGE = ::range < TYPE * >
using BASE_TYPE = TYPE
Public Types inherited from array_range< TYPE, ARG_TYPE >
using BASE_RANGE = ::block_range<TYPE *>
using RAW_BASE_ARRAY = array_range
using BASE_RAW_RANGE = ::range<TYPE *>
using BASE_TYPE = TYPE
using BASE_PAYLOAD = TYPE
Public Types inherited from block_range< TYPE * >
using this_iterator
using iterator
using const_iterator
using THIS_RAW_RANGE
using RAW_RANGE
using CONST_RAW_RANGE
using _BASE_RAW_RANGE
using THIS_RANGE
using RANGE
using CONST_RANGE
using ITEM_POINTER
using THIS_ITEM
using ITEM
using CONST_ITEM
using ARG_ITEM
Public Types inherited from range< TYPE * >
using this_iterator
using iterator
using const_iterator
using THIS_RAW_RANGE
using RAW_RANGE
using CONST_RAW_RANGE
using THIS_RANGE
using RANGE
using CONST_RANGE
using ITEM_POINTER
using THIS_ITEM
using ITEM
using CONST_ITEM
using ARG_ITEM

Public Member Functions

TYPE * data ()
const TYPE * data () const
::collection::count storage_size () const
template<pointer_not_castable_to< TYPE * > P>
::collection::count allocate (::collection::count nNewSize, bool bShrink, bool bRaw, P &p)
template<pointer_castable_to< TYPE * > T>
::collection::count allocate (::collection::count nNewSize, bool bShrink, bool bRaw, T &t)
TYPE & add_new ()
::collection::index add (const TYPE &t)
block_array & operator+= (const TYPE &t)
constexpr bool is_raw_array () const
void erase_at (::collection::index iErase, ::collection::count countErase=1)
 attention, it doesn't actually destruct the object it just not regard it as part of the "filled" array...
void erase_first (::collection::count count=1)
void erase_last (::collection::count count=1)
::collection::count _allocate (::collection::count nNewSize, bool bShrink, bool bRaw, const TYPE *ptype)
Public Member Functions inherited from array_range< TYPE, ARG_TYPE >
constexpr bool array_range_ok () const
::collection::count size () const
::collection::count get_count () const
inline ::collection::index get_lower_bound (::collection::index i=0) const
inline ::collection::index get_middle_index (::collection::index i=0) const
inline ::collection::index get_upper_bound (::collection::index i=-1) const
inline ::collection::index lower_bound (::collection::index i=0) const
inline ::collection::index upper_bound (::collection::index i=-1) const
inline ::collection::index first_index (::collection::index i=0) const
inline ::collection::index middle_index (::collection::index i=0) const
inline ::collection::index last_index (::collection::index i=-1) const
bool bounds (::collection::index i) const
bool contains_index (::collection::index i) const
bool prepare_first_last (::collection::index &first, ::collection::index &last) const
bool prepare_first_in_count_last_out (::collection::index &first, ::collection::count &inCountLastOut) const
const TYPE * ptr_at (::collection::index nIndex) const
TYPE * ptr_at (::collection::index nIndex)
const TYPE & element_at (::collection::index nIndex) const
TYPE & element_at (::collection::index nIndex)
TYPE & first (::collection::index n=0)
const TYPE & first (::collection::index n=0) const
TYPE & last (::collection::index n=-1)
const TYPE & last (::collection::index n=-1) const
TYPE & middle (::collection::index n=0)
const TYPE & middle (::collection::index n=0) const
TYPE & operator[] (::collection::index i)
const TYPE & operator[] (::collection::index i) const
auto & payloads ()
auto & payloads () const
Public Member Functions inherited from block_range< TYPE * >
constexpr block_range (no_initialize_t noinitialize)
constexpr block_range (nullptr_t)
constexpr block_range (const ITEM(&array)[count], enum_range erange=e_range_none)
constexpr block_range (const TYPED_RANGE &range)
constexpr block_range (const block_range &range)
constexpr block_range (block_range &&range)
constexpr block_range (TYPE *&p)
constexpr block_range (this_iterator begin, INTEGRAL count, enum_range erange=e_range_none)
constexpr block_range (this_iterator begin, this_iterator end, enum_range erange=e_range_none)
constexpr block_range (this_iterator begin, EQUALITY equality)
block_range & operator= (const block_range &range)
block_range & operator= (block_range &&range)
const ::block block () const
::block block ()
Public Member Functions inherited from range< TYPE * >
constexpr range (no_initialize_t)
constexpr range (nullptr_t)
constexpr range (const ITEM(&array)[count], enum_range erange=e_range_none)
constexpr range (const TYPED_RANGE &range)
constexpr range (const range &range)
constexpr range (range &&range)
constexpr range (TYPE *&p)
constexpr range (this_iterator begin, INTEGRAL count, enum_range erange=e_range_none)
constexpr range (this_iterator begin, this_iterator end, enum_range erange=e_range_none)
constexpr range (this_iterator begin, EQUALITY equality)
range & operator= (const range &range)
range & operator= (range &&range)
void add_initializer_list (const ::std::initializer_list< ITEM > &initializer_list)
void set_null ()
constexpr THIS_RAW_RANGE operator() (START start) const
constexpr THIS_RAW_RANGE operator() (START start, COUNT count) const
::collection::count array_get_count () const
void block_concatenate_to (A_ITEM *&p)
constexpr THIS_RAW_RANGE operator() (START start)
THIS_RAW_RANGE operator() (START start, COUNT count)
constexpr auto index_of (const_iterator p) const
this_iterator & begin ()
this_iterator & end ()
const_iterator begin () const
const_iterator end () const
this_iterator & begin (this_iterator begin)
this_iterator & end (this_iterator end)
auto & first ()
auto & first () const
constexpr this_iterator data ()
constexpr const this_iterator data () const
constexpr ::collection::count size () const
constexpr memsize size_in_bytes () const
constexpr bool is_empty () const
constexpr bool is_set () const
bool operator! () const
constexpr bool is_before_begin (const_iterator iterator) const
constexpr bool is_end (const_iterator iterator) const
constexpr bool is_iterator_ok (const_iterator iterator) const
constexpr bool is_this_range (const range &range) const
constexpr THIS_RAW_RANGE _start_range (memsize start) const
constexpr THIS_RAW_RANGE _end_range (const_iterator end) const
constexpr THIS_RAW_RANGE _start_count_range (memsize start, memsize count) const
constexpr bool _equals (const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) const
constexpr bool equals (const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) const
constexpr auto _order (const THIS_RAW_RANGE &rangeBlock, ORDERING ordering) const
constexpr auto order (const THIS_RAW_RANGE &rangeBlock, ORDERING ordering) const
constexpr const_iterator _find (const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) const
constexpr const_iterator find (const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) const
constexpr const_iterator _rear_find (const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) const
constexpr const_iterator rear_find (const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) const
constexpr const_iterator _find_first_character (ITEM item, EQUALITY equality) const
constexpr const_iterator find_first_character (ITEM item, EQUALITY equality) const
constexpr const_iterator _find_first_character_in (const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) const
constexpr const_iterator find_first_character_in (const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) const
constexpr const_iterator _rear_find_first_character_in (const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) const
constexpr const_iterator rear_find_first_character_in (const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) const
constexpr const_iterator _skip (ARG_ITEM item, EQUALITY equality) const
constexpr const_iterator skip (ARG_ITEM item, EQUALITY equality) const
constexpr const_iterator _rear_skip (ARG_ITEM item, EQUALITY equality) const
constexpr const_iterator rear_skip (ARG_ITEM item, EQUALITY equality) const
constexpr const_iterator _rear_find (ARG_ITEM item, EQUALITY equality) const
constexpr const_iterator rear_find (ARG_ITEM item, EQUALITY equality) const
constexpr bool _begins (const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) const
constexpr bool begins (const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) const
constexpr bool _ends (const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) const
constexpr bool ends (const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) const

Public Attributes

TYPE m_ta [t_iSize]
Public Attributes inherited from range< TYPE * >
this_iterator m_begin
this_iterator m_end
enum_range m_erange

Additional Inherited Members

Static Public Member Functions inherited from range< TYPE * >
static constexpr memsize item_size ()
static constexpr bool _initialize_equals (bool &b, const THIS_RAW_RANGE &range, const THIS_RAW_RANGE &rangeBlock)
static constexpr bool _static_equals (THIS_RAW_RANGE range, THIS_RAW_RANGE rangeBlock, EQUALITY equality)
static constexpr bool static_equals (const THIS_RAW_RANGE &range, const THIS_RAW_RANGE &rangeBlock, EQUALITY equality)
static constexpr auto _static_order (THIS_RAW_RANGE range, THIS_RAW_RANGE rangeBlock, ORDERING ordering)
static constexpr auto static_order (const THIS_RAW_RANGE &range, const THIS_RAW_RANGE &rangeBlock, ORDERING ordering)
static bool _initialize_find (const_iterator &p, const THIS_RAW_RANGE &range, const THIS_RAW_RANGE &rangeBlock)
static const_iterator _static_find (THIS_RAW_RANGE range, const THIS_RAW_RANGE &rangeBlock, EQUALITY equality)
static const_iterator static_find (const THIS_RAW_RANGE &range, const THIS_RAW_RANGE &rangeBlock, EQUALITY equality)
static bool _initialize_rear_find (const_iterator &p, const THIS_RAW_RANGE &range, const THIS_RAW_RANGE &rangeBlock)
static const_iterator _static_rear_find (THIS_RAW_RANGE range, const THIS_RAW_RANGE &rangeBlock, EQUALITY equality)
static const_iterator static_rear_find (const THIS_RAW_RANGE &range, const THIS_RAW_RANGE &rangeBlock, EQUALITY equality)
static constexpr bool _initialize_find_first_character (const_iterator &p, const THIS_RAW_RANGE &range, ITEM2 item) noexcept
static constexpr const_iterator _static_find_first_character (THIS_RAW_RANGE range, ITEM item, EQUALITY equality) noexcept
static constexpr const_iterator static_find_first_character (const THIS_RAW_RANGE &range, ITEM item, EQUALITY equality) noexcept
static constexpr bool _initialize_find_first_character_in (const_iterator &p, const THIS_RAW_RANGE &range, const THIS_RAW_RANGE &rangeBlock) noexcept
static constexpr const_iterator _static_find_first_character_in (THIS_RAW_RANGE range, const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) noexcept
static constexpr const_iterator static_find_first_character_in (const THIS_RAW_RANGE &range, const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) noexcept
static constexpr bool _initialize_rear_find_first_character_in (const_iterator &p, const THIS_RAW_RANGE &range, const THIS_RAW_RANGE &rangeBlock) noexcept
static constexpr const_iterator _static_rear_find_first_character_in (THIS_RAW_RANGE range, const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) noexcept
static constexpr const_iterator static_rear_find_first_character_in (THIS_RAW_RANGE range, const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) noexcept
static constexpr bool _initialize_skip (const_iterator &p, const THIS_RAW_RANGE &range) noexcept
static constexpr const_iterator _static_skip (THIS_RAW_RANGE range, ARG_ITEM item, EQUALITY equality) noexcept
static constexpr const_iterator static_skip (const THIS_RAW_RANGE &range, ARG_ITEM item, EQUALITY equality) noexcept
static constexpr bool _initialize_rear_skip (const_iterator &p, const THIS_RAW_RANGE &range) noexcept
static constexpr const_iterator _static_rear_skip (THIS_RAW_RANGE range, ARG_ITEM item, EQUALITY equality) noexcept
static constexpr const_iterator static_rear_skip (const THIS_RAW_RANGE &range, ARG_ITEM item, EQUALITY equality) noexcept
static constexpr bool _initialize_find_item (const_iterator &p, const THIS_RAW_RANGE &range) noexcept
static constexpr bool _initialize_rear_find (const_iterator &p, const THIS_RAW_RANGE &range) noexcept
static constexpr const_iterator _static_rear_find (THIS_RAW_RANGE range, ARG_ITEM item, EQUALITY equality) noexcept
static constexpr const_iterator static_rear_find (THIS_RAW_RANGE range, ARG_ITEM item, EQUALITY equality) noexcept
static constexpr bool _initialize_contains (bool &b, const THIS_RAW_RANGE &range, const THIS_RAW_RANGE &rangeBlock) noexcept
static constexpr bool _static_begins (THIS_RAW_RANGE range, THIS_RAW_RANGE rangeBlock, EQUALITY equality) noexcept
static constexpr bool static_begins (const THIS_RAW_RANGE &range, const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) noexcept
static constexpr bool _static_ends (THIS_RAW_RANGE range, THIS_RAW_RANGE rangeBlock, EQUALITY equality) noexcept
static constexpr bool static_ends (const THIS_RAW_RANGE &range, const THIS_RAW_RANGE &rangeBlock, EQUALITY equality) noexcept

Member Function Documentation

◆ erase_at()

template<typename TYPE, ::i32 t_iSize, enum_array t_earray, typename ARG_TYPE>
void block_array< TYPE, t_iSize, t_earray, ARG_TYPE >::erase_at ( ::collection::index iErase,
::collection::count countErase = 1 )
inline

attention, it doesn't actually destruct the object it just not regard it as part of the "filled" array...

Parameters
iEraseis the item index to be erased

The documentation for this class was generated from the following file: