ELC in dev
ELC-lang
载入中...
搜索中...
未找到
elc::defs::container::array_n::array_t< T > 模板类 参考

Public 类型

typedef iterator_t< T > iterator
 
typedef const_iterator_t< T > const_iterator
 
typedef reverse_iterator_t< T > reverse_iterator
 
typedef reverse_const_iterator_t< T > reverse_const_iterator
 

Public 成员函数

void swap_with (this_t &a) noexcept
 
constexpr array_t () noexcept
 
 array_t (note::size_t size) noexcept(get< T >.nothrow<>)
 
 array_t (note::size_t size, const T &elem) noexcept(get< T >.nothrow<>)
 
 array_t (::std::initializer_list< T > &&list) noexcept(get< T >.as_array.nothrow<::std::initializer_list< T > >)
 
template<size_t N>
 array_t (T(&a)[N]) noexcept(get< T >.as_array.nothrow< T(&)[N]>)
 
template<class U >
requires (get<T>.as_array.able<U> && type_info<remove_cvref<U>>!=type_info<this_t>)
 array_t (U &&a) noexcept(get< T >.as_array.nothrow< U >)
 
template<class Func >
requires (invoke<Func>.with_return_type<T>.able<>)
 array_t (note::size_t size, Func &&func) noexcept(get< T >.nothrow< Func >)
 
template<class Func >
requires (invoke<Func>.with_return_type<T>.able<size_t>)
 array_t (note::size_t size, Func &&func) noexcept(get< T >.nothrow< Func >)
 
 array_t (const this_t &a) noexcept(noexcept(((::std::declval< this_t >()).copy())))
 
this_toperator= (const this_t &a) &noexcept(noexcept(((::std::declval< this_t >()).copy())))
 
 array_t (this_t &&a) noexcept
 
this_toperator= (this_t &&a) &noexcept
 
 ~array_t () noexcept(unget.nothrow< T >)
 
size_t size () const noexcept
 
size_t size_in_byte () const noexcept
 
void resize (size_t size) noexcept(resize_nothrow)
 
void forward_resize (size_t size) noexcept(forward_resize_nothrow)
 
void insert (size_t index, size_t count) noexcept(insert_nothrow)
 
void insert (size_t index, size_t count, const T &value) noexcept(insert_nothrow)
 
void insert (size_t index, size_t count, const T *data) noexcept(insert_nothrow)
 
void insert_with_resize (size_t index, size_t count, const T *data, size_t new_size) noexcept(insert_nothrow)
 
void part_used_insert_with_resize (size_t index, size_t count, const T *data, size_t new_size, size_t used_size) noexcept(insert_nothrow)
 
void insert_with_forward_resize (size_t index, size_t count, const T *data, size_t new_size) noexcept(insert_with_forward_resize_nothrow)
 
void part_used_insert_with_forward_resize (size_t index, size_t count, const T *data, size_t new_size, size_t used_size) noexcept(insert_with_forward_resize_nothrow)
 
bool empty () const noexcept
 
void clear () noexcept(re_construct.nothrow< this_t >)
 
T * data () noexcept
 
const T * data () const noexcept
 
T & operator[] (size_t pos) noexcept
 
const T & operator[] (size_t pos) const noexcept
 
 operator hash_t () const noexcept(hash.nothrow< T >)
 
 operator T* () noexcept
 
 operator const T * () const noexcept
 
constexpr iterator get_iterator_at (size_t a) noexcept
 
constexpr const_iterator get_iterator_at (size_t a) const noexcept
 
constexpr iterator begin () noexcept
 
iterator end () noexcept
 
constexpr const_iterator begin () const noexcept
 
const_iterator end () const noexcept
 
const_iterator cbegin () const noexcept
 
const_iterator cend () const noexcept
 
reverse_iterator rbegin () noexcept
 
constexpr reverse_iterator rend () noexcept
 
reverse_const_iterator rbegin () const noexcept
 
autofront () noexcept
 
autofront () const noexcept
 
autoback () noexcept
 
autoback () const noexcept
 
constexpr reverse_const_iterator rend () const noexcept
 
reverse_const_iterator rcbegin () const noexcept
 
constexpr reverse_const_iterator rcend () const noexcept
 
constexpr auto operator<=> (array_like_view_t< const T > a) const noexcept(compare.nothrow< array_like_view_t< T > >)
 
constexpr auto operator== (array_like_view_t< const T > a) const noexcept(equal.nothrow< array_like_view_t< T > >)
 
constexpr auto operator<=> (const this_t &a) const noexcept(compare.nothrow< array_like_view_t< T > >)
 
constexpr auto operator== (const this_t &a) const noexcept(equal.nothrow< array_like_view_t< T > >)
 
template<typename func_t >
requires (bool(requires{ (::std::declval< func_t >())((::std::declval< T& >())) ;}))
void for_each (func_t &&func) noexcept(noexcept(((::std::declval< func_t >())((::std::declval< T & >())))))
 
template<typename func_t >
requires (bool(requires{ (::std::declval< func_t >())((::std::declval< const T& >())) ;}))
void for_each (func_t &&func) const noexcept(noexcept(((::std::declval< func_t >())((::std::declval< const T & >())))))
 
void push_back (const T &a) noexcept(get< T >.apply_end.nothrow< const T & >)
 
void push_back (T &&a) noexcept(get< T >.apply_end.nothrow< T >)
 
void remove (T a) noexcept(get< T >.remove.nothrow< T >)
 
template<typename U >
requires (bool(requires{ *this+=b ;}))
this_t && operator+ (U &&b) &&noexcept(noexcept((*this+=b)))
 
template<typename U >
iterator find (U &&a) noexcept
 
template<typename U >
const_iterator find (U &&a) const noexcept
 

静态 Public 属性

static constexpr bool resize_nothrow = get_resize.nothrow<T>
 
static constexpr bool forward_resize_nothrow = get_forward_resize.nothrow<T>
 
static constexpr bool insert_nothrow = get_resize.insert.nothrow<T>
 
static constexpr bool insert_with_forward_resize_nothrow = get_forward_resize.insert_with_resize.nothrow<T>
 

友元

template<class U , class enable_state = ::std::enable_if_t< get<T>.apply_end.able >>
this_toperator+= (this_t &a, U &&b) noexcept(get< T >.apply_end.nothrow< U >)
 
this_toperator+= (this_t &a, zero_t b) noexcept(get< T >.apply_end.nothrow< T >)
 
template<typename U >
requires (bool(requires{ a.copy()+=b ;}))
this_t operator+ (const this_t &a, U &&b) noexcept(noexcept((a.copy()+=b)))
 
template<typename U >
requires (bool(requires{ this_t(a)+=b ;}))
this_t operator+ (U &&a, const this_t &b) noexcept(noexcept((this_t(a)+=b)))
 

详细描述

template<typename T>
class elc::defs::container::array_n::array_t< T >

在文件 all_defs.cpp23666 行定义.

成员类型定义说明

◆ const_iterator

template<typename T >
typedef const_iterator_t<T> elc::defs::container::array_n::array_t< T >::const_iterator

在文件 all_defs.cpp23787 行定义.

◆ iterator

template<typename T >
typedef iterator_t<T> elc::defs::container::array_n::array_t< T >::iterator

在文件 all_defs.cpp23786 行定义.

◆ reverse_const_iterator

template<typename T >
typedef reverse_const_iterator_t<T> elc::defs::container::array_n::array_t< T >::reverse_const_iterator

在文件 all_defs.cpp23814 行定义.

◆ reverse_iterator

template<typename T >
typedef reverse_iterator_t<T> elc::defs::container::array_n::array_t< T >::reverse_iterator

在文件 all_defs.cpp23813 行定义.

构造及析构函数说明

◆ array_t() [1/10]

template<typename T >
constexpr elc::defs::container::array_n::array_t< T >::array_t ( )
inlineconstexprnoexcept

在文件 all_defs.cpp23680 行定义.

23680:_m(null_ptr){}

◆ array_t() [2/10]

template<typename T >
elc::defs::container::array_n::array_t< T >::array_t ( note::size_t  size)
inlineexplicitnoexcept

在文件 all_defs.cpp23684 行定义.

23684 {
23685 _m=get<T>[size.value]();
23686 }
constexpr T down_cast(U a) noexcept
向下转型至

◆ array_t() [3/10]

template<typename T >
elc::defs::container::array_n::array_t< T >::array_t ( note::size_t  size,
const T &  elem 
)
inlineexplicitnoexcept

在文件 all_defs.cpp23687 行定义.

23687 {
23688 _m=get<T>[size.value](elem);
23689 }

◆ array_t() [4/10]

template<typename T >
elc::defs::container::array_n::array_t< T >::array_t ( ::std::initializer_list< T > &&  list)
inlinenoexcept

在文件 all_defs.cpp23691 行定义.

23691 {
23693 }

◆ array_t() [5/10]

template<typename T >
template<size_t N>
elc::defs::container::array_n::array_t< T >::array_t ( T(&)  a[N]) )[N]
inlinenoexcept

在文件 all_defs.cpp23696 行定义.

23696 {
23697 _m=get<T>.as_array(a);
23698 }

◆ array_t() [6/10]

template<typename T >
template<class U >
requires (get<T>.as_array.able<U> && type_info<remove_cvref<U>>!=type_info<this_t>)
elc::defs::container::array_n::array_t< T >::array_t ( U &&  a)
inlinenoexcept

在文件 all_defs.cpp23704 行定义.

23704 {
23705 _m=get<T>.as_array(forward<U>(a));
23706 }

◆ array_t() [7/10]

template<typename T >
template<class Func >
requires (invoke<Func>.with_return_type<T>.able<>)
elc::defs::container::array_n::array_t< T >::array_t ( note::size_t  size,
Func &&  func 
)
inlinenoexcept

在文件 all_defs.cpp23709 行定义.

23709 {
23710 _m=get<T>[size.value]();
23711 for(auto&i:*this)
23712 i=func();
23713 }

◆ array_t() [8/10]

template<typename T >
template<class Func >
requires (invoke<Func>.with_return_type<T>.able<size_t>)
elc::defs::container::array_n::array_t< T >::array_t ( note::size_t  size,
Func &&  func 
)
inlinenoexcept

在文件 all_defs.cpp23715 行定义.

23715 {
23716 _m=get<T>[size.value]();
23717 for(size_t i=0;i<size.value;++i)
23718 (*this)[i]=func(i);
23719 }

◆ array_t() [9/10]

template<typename T >
elc::defs::container::array_n::array_t< T >::array_t ( const this_t a)
inlinenoexcept

在文件 all_defs.cpp23722 行定义.

23722:array_t(a.copy()){}

◆ array_t() [10/10]

template<typename T >
elc::defs::container::array_n::array_t< T >::array_t ( this_t &&  a)
inlinenoexcept

在文件 all_defs.cpp23726 行定义.

23726:array_t(){swap_with(a);}
void swap_with(this_t &a) noexcept

◆ ~array_t()

template<typename T >
elc::defs::container::array_n::array_t< T >::~array_t ( )
inlinenoexcept

在文件 all_defs.cpp23732 行定义.

23732 {
23733 unget(_m);
23734 }
constexpr struct elc::defs::memory::get_n::unget_t unget

成员函数说明

◆ back() [1/2]

template<typename T >
auto & elc::defs::container::array_n::array_t< T >::back ( ) const
inlinenoexcept

在文件 all_defs.cpp23833 行定义.

23833 {
23834 return*rbegin();
23835 }
reverse_iterator rbegin() noexcept

◆ back() [2/2]

template<typename T >
auto & elc::defs::container::array_n::array_t< T >::back ( )
inlinenoexcept

在文件 all_defs.cpp23830 行定义.

23830 {
23831 return*rbegin();
23832 }

◆ begin() [1/2]

template<typename T >
constexpr const_iterator elc::defs::container::array_n::array_t< T >::begin ( ) const
inlineconstexprnoexcept

在文件 all_defs.cpp23801 行定义.

23801 {
23802 return get_iterator_at(zero);
23803 }
constexpr iterator get_iterator_at(size_t a) noexcept
constexpr struct elc::defs::base::zero_t zero

◆ begin() [2/2]

template<typename T >
constexpr iterator elc::defs::container::array_n::array_t< T >::begin ( )
inlineconstexprnoexcept

在文件 all_defs.cpp23795 行定义.

23795 {
23796 return get_iterator_at(zero);
23797 }

◆ cbegin()

template<typename T >
const_iterator elc::defs::container::array_n::array_t< T >::cbegin ( ) const
inlinenoexcept

在文件 all_defs.cpp23807 行定义.

23807 {
23808 return begin();
23809 }
constexpr iterator begin() noexcept

◆ cend()

template<typename T >
const_iterator elc::defs::container::array_n::array_t< T >::cend ( ) const
inlinenoexcept

在文件 all_defs.cpp23810 行定义.

23810 {
23811 return end();
23812 }

◆ clear()

template<typename T >
void elc::defs::container::array_n::array_t< T >::clear ( )
inlinenoexcept

在文件 all_defs.cpp23775 行定义.

23775 {
23776 re_construct(this);
23777 }
constexpr struct elc::defs::memory::lifetime_n::re_construct_t re_construct

◆ data() [1/2]

template<typename T >
const T * elc::defs::container::array_n::array_t< T >::data ( ) const
inlinenoexcept

在文件 all_defs.cpp23779 行定义.

23779{return _m;}

◆ data() [2/2]

template<typename T >
T * elc::defs::container::array_n::array_t< T >::data ( )
inlinenoexcept

在文件 all_defs.cpp23778 行定义.

23778{return _m;}

◆ empty()

template<typename T >
bool elc::defs::container::array_n::array_t< T >::empty ( ) const
inlinenoexcept

在文件 all_defs.cpp23772 行定义.

23772 {
23773 return _m==null_ptr;
23774 }
constexpr struct elc::defs::base::null_ptr_n::null_ptr_t null_ptr

◆ end() [1/2]

template<typename T >
const_iterator elc::defs::container::array_n::array_t< T >::end ( ) const
inlinenoexcept

在文件 all_defs.cpp23804 行定义.

23804 {
23805 return get_iterator_at(size());
23806 }

◆ end() [2/2]

template<typename T >
iterator elc::defs::container::array_n::array_t< T >::end ( )
inlinenoexcept

在文件 all_defs.cpp23798 行定义.

23798 {
23799 return get_iterator_at(size());
23800 }

◆ find() [1/2]

template<typename T >
template<typename U >
const_iterator elc::defs::container::array_n::array_t< T >::find ( U &&  a) const
inlinenoexcept

在文件 all_defs.cpp23915 行定义.

23915 {
23916 return in_range(a,array_like_view_t<const T>{*this});
23917 }
constexpr bool in_range(T pattern, const range_t< T >range) noexcept(noexcept((bool((::std::declval< T >())>=(::std::declval< const T >()) &&(::std::declval< T >())<=(::std::declval< const T >())))))
判断一个值是否在某个范围内

◆ find() [2/2]

template<typename T >
template<typename U >
iterator elc::defs::container::array_n::array_t< T >::find ( U &&  a)
inlinenoexcept

在文件 all_defs.cpp23911 行定义.

23911 {
23912 return in_range(a,array_like_view_t<T>{*this});
23913 }

◆ for_each() [1/2]

template<typename T >
template<typename func_t >
requires (bool(requires{ (::std::declval< func_t >())((::std::declval< const T& >())) ;}))
void elc::defs::container::array_n::array_t< T >::for_each ( func_t &&  func) const
inlinenoexcept

在文件 all_defs.cpp23870 行定义.

23870 {
23871 auto asize=size();
23872 while(asize--)
23873 func((*this)[asize]);
23874 }

◆ for_each() [2/2]

template<typename T >
template<typename func_t >
requires (bool(requires{ (::std::declval< func_t >())((::std::declval< T& >())) ;}))
void elc::defs::container::array_n::array_t< T >::for_each ( func_t &&  func)
inlinenoexcept

在文件 all_defs.cpp23861 行定义.

23861 {
23862 auto asize=size();
23863 while(asize--)
23864 func((*this)[asize]);
23865 }

◆ forward_resize()

template<typename T >
void elc::defs::container::array_n::array_t< T >::forward_resize ( size_t  size)
inlinenoexcept

在文件 all_defs.cpp23746 行定义.

23746 {
23748 }
constexpr struct elc::defs::memory::get_n::get_forward_resize_t get_forward_resize

◆ front() [1/2]

template<typename T >
auto & elc::defs::container::array_n::array_t< T >::front ( ) const
inlinenoexcept

在文件 all_defs.cpp23827 行定义.

23827 {
23828 return*begin();
23829 }

◆ front() [2/2]

template<typename T >
auto & elc::defs::container::array_n::array_t< T >::front ( )
inlinenoexcept

在文件 all_defs.cpp23824 行定义.

23824 {
23825 return*begin();
23826 }

◆ get_iterator_at() [1/2]

template<typename T >
constexpr const_iterator elc::defs::container::array_n::array_t< T >::get_iterator_at ( size_t  a) const
inlineconstexprnoexcept

在文件 all_defs.cpp23792 行定义.

23792 {
23793 return _m+a;
23794 }

◆ get_iterator_at() [2/2]

template<typename T >
constexpr iterator elc::defs::container::array_n::array_t< T >::get_iterator_at ( size_t  a)
inlineconstexprnoexcept

在文件 all_defs.cpp23789 行定义.

23789 {
23790 return _m+a;
23791 }

◆ insert() [1/3]

template<typename T >
void elc::defs::container::array_n::array_t< T >::insert ( size_t  index,
size_t  count 
)
inlinenoexcept

在文件 all_defs.cpp23750 行定义.

23750 {
23751 get_resize.insert(_m,index,count);
23752 }
constexpr struct elc::defs::memory::get_n::get_resize_t get_resize
static constexpr struct elc::defs::memory::get_n::get_resize_t::insert_t insert

◆ insert() [2/3]

template<typename T >
void elc::defs::container::array_n::array_t< T >::insert ( size_t  index,
size_t  count,
const T &  value 
)
inlinenoexcept

在文件 all_defs.cpp23753 行定义.

23753 {
23754 get_resize.insert(_m,index,count,value);
23755 }

◆ insert() [3/3]

template<typename T >
void elc::defs::container::array_n::array_t< T >::insert ( size_t  index,
size_t  count,
const T *  data 
)
inlinenoexcept

在文件 all_defs.cpp23756 行定义.

23756 {
23757 get_resize.insert(_m,index,count,data);
23758 }

◆ insert_with_forward_resize()

template<typename T >
void elc::defs::container::array_n::array_t< T >::insert_with_forward_resize ( size_t  index,
size_t  count,
const T *  data,
size_t  new_size 
)
inlinenoexcept

在文件 all_defs.cpp23766 行定义.

23766 {
23768 }
static constexpr struct elc::defs::memory::get_n::get_forward_resize_t::insert_resize_t insert_with_resize

◆ insert_with_resize()

template<typename T >
void elc::defs::container::array_n::array_t< T >::insert_with_resize ( size_t  index,
size_t  count,
const T *  data,
size_t  new_size 
)
inlinenoexcept

在文件 all_defs.cpp23759 行定义.

23759 {
23761 }
static constexpr struct elc::defs::memory::get_n::get_resize_t::insert_resize_t insert_with_resize

◆ operator const T *()

template<typename T >
elc::defs::container::array_n::array_t< T >::operator const T * ( ) const
inlineexplicitnoexcept

在文件 all_defs.cpp23784 行定义.

23784{return _m;}

◆ operator hash_t()

template<typename T >
elc::defs::container::array_n::array_t< T >::operator hash_t ( ) const
inlineexplicitnoexcept

在文件 all_defs.cpp23782 行定义.

23782{return hash(_m,size());}
#define hash

◆ operator T*()

template<typename T >
elc::defs::container::array_n::array_t< T >::operator T* ( )
inlineexplicitnoexcept

在文件 all_defs.cpp23783 行定义.

23783{return _m;}

◆ operator+()

template<typename T >
template<typename U >
requires (bool(requires{ *this+=b ;}))
this_t && elc::defs::container::array_n::array_t< T >::operator+ ( U &&  b) &&
inlinenoexcept

在文件 all_defs.cpp23905 行定义.

23905 {//对右值的operator+优化为operator+=
23906 return *this+=b;
23907 }

◆ operator<=>() [1/2]

template<typename T >
constexpr auto elc::defs::container::array_n::array_t< T >::operator<=> ( array_like_view_t< const T >  a) const
inlineconstexprnoexcept

在文件 all_defs.cpp23846 行定义.

23846 {
23847 return compare(array_like_view_t<const T>(*this),a);
23848 }
constexpr struct elc::defs::base::compare_t compare

◆ operator<=>() [2/2]

template<typename T >
constexpr auto elc::defs::container::array_n::array_t< T >::operator<=> ( const this_t a) const
inlineconstexprnoexcept

在文件 all_defs.cpp23852 行定义.

23852 {
23854 }
constexpr auto operator<=>(array_like_view_t< const T > a) const noexcept(compare.nothrow< array_like_view_t< T > >)

◆ operator=() [1/2]

template<typename T >
this_t & elc::defs::container::array_n::array_t< T >::operator= ( const this_t a) &
inlinenoexcept

在文件 all_defs.cpp23723 行定义.

23723 {
23724 return operator=(a.copy());
23725 }
this_t & operator=(const this_t &a) &noexcept(noexcept(((::std::declval< this_t >()).copy())))

◆ operator=() [2/2]

template<typename T >
this_t & elc::defs::container::array_n::array_t< T >::operator= ( this_t &&  a) &
inlinenoexcept

在文件 all_defs.cpp23727 行定义.

23727 {
23728 swap_with(a);
23729 return*this;
23730 }

◆ operator==() [1/2]

template<typename T >
constexpr auto elc::defs::container::array_n::array_t< T >::operator== ( array_like_view_t< const T >  a) const
inlineconstexprnoexcept

在文件 all_defs.cpp23849 行定义.

23849 {
23850 return equal(array_like_view_t<const T>(*this),a);
23851 }
constexpr struct elc::defs::base::equal_t equal

◆ operator==() [2/2]

template<typename T >
constexpr auto elc::defs::container::array_n::array_t< T >::operator== ( const this_t a) const
inlineconstexprnoexcept

在文件 all_defs.cpp23855 行定义.

23855 {
23857 }
constexpr auto operator==(array_like_view_t< const T > a) const noexcept(equal.nothrow< array_like_view_t< T > >)
函数调用图:

◆ operator[]() [1/2]

template<typename T >
const T & elc::defs::container::array_n::array_t< T >::operator[] ( size_t  pos) const
inlinenoexcept

在文件 all_defs.cpp23781 行定义.

23781{return _m[pos];}

◆ operator[]() [2/2]

template<typename T >
T & elc::defs::container::array_n::array_t< T >::operator[] ( size_t  pos)
inlinenoexcept

在文件 all_defs.cpp23780 行定义.

23780{return _m[pos];}

◆ part_used_insert_with_forward_resize()

template<typename T >
void elc::defs::container::array_n::array_t< T >::part_used_insert_with_forward_resize ( size_t  index,
size_t  count,
const T *  data,
size_t  new_size,
size_t  used_size 
)
inlinenoexcept

在文件 all_defs.cpp23769 行定义.

23769 {
23771 }
static constexpr struct elc::defs::memory::get_n::get_forward_resize_t::insert_resize_t::with_used_size_t with_used_size

◆ part_used_insert_with_resize()

template<typename T >
void elc::defs::container::array_n::array_t< T >::part_used_insert_with_resize ( size_t  index,
size_t  count,
const T *  data,
size_t  new_size,
size_t  used_size 
)
inlinenoexcept

在文件 all_defs.cpp23762 行定义.

23762 {
23764 }
static constexpr struct elc::defs::memory::get_n::get_resize_t::insert_resize_t::with_used_size_t with_used_size

◆ push_back() [1/2]

template<typename T >
void elc::defs::container::array_n::array_t< T >::push_back ( const T &  a)
inlinenoexcept

在文件 all_defs.cpp23877 行定义.

23877 {
23878 get<T>.apply_end(note::to<T*&>(_m),a);
23879 }

◆ push_back() [2/2]

template<typename T >
void elc::defs::container::array_n::array_t< T >::push_back ( T &&  a)
inlinenoexcept

在文件 all_defs.cpp23880 行定义.

23880 {
23881 get<T>.apply_end(note::to<T*&>(_m),move(a));
23882 }
constexpr struct elc::defs::memory::lifetime_n::move_t move

◆ rbegin() [1/2]

template<typename T >
reverse_const_iterator elc::defs::container::array_n::array_t< T >::rbegin ( ) const
inlinenoexcept

在文件 all_defs.cpp23821 行定义.

23821 {
23822 return _m+size()-1;
23823 }

◆ rbegin() [2/2]

template<typename T >
reverse_iterator elc::defs::container::array_n::array_t< T >::rbegin ( )
inlinenoexcept

在文件 all_defs.cpp23815 行定义.

23815 {
23816 return _m+size()-1;
23817 }

◆ rcbegin()

template<typename T >
reverse_const_iterator elc::defs::container::array_n::array_t< T >::rcbegin ( ) const
inlinenoexcept

在文件 all_defs.cpp23839 行定义.

23839 {
23840 return rbegin();
23841 }

◆ rcend()

template<typename T >
constexpr reverse_const_iterator elc::defs::container::array_n::array_t< T >::rcend ( ) const
inlineconstexprnoexcept

在文件 all_defs.cpp23842 行定义.

23842 {
23843 return rend();
23844 }
constexpr reverse_iterator rend() noexcept

◆ remove()

template<typename T >
void elc::defs::container::array_n::array_t< T >::remove ( a)
inlinenoexcept

在文件 all_defs.cpp23883 行定义.

23883 {
23884 get<T>.remove(a,note::from(_m));
23885 }
constexpr from_t< T > from(T v)

◆ rend() [1/2]

template<typename T >
constexpr reverse_const_iterator elc::defs::container::array_n::array_t< T >::rend ( ) const
inlineconstexprnoexcept

在文件 all_defs.cpp23836 行定义.

23836 {
23837 return _m-1;
23838 }

◆ rend() [2/2]

template<typename T >
constexpr reverse_iterator elc::defs::container::array_n::array_t< T >::rend ( )
inlineconstexprnoexcept

在文件 all_defs.cpp23818 行定义.

23818 {
23819 return _m-1;
23820 }

◆ resize()

template<typename T >
void elc::defs::container::array_n::array_t< T >::resize ( size_t  size)
inlinenoexcept

在文件 all_defs.cpp23742 行定义.

23742 {
23743 get_resize(_m,size);
23744 }

◆ size()

template<typename T >
size_t elc::defs::container::array_n::array_t< T >::size ( ) const
inlinenoexcept

在文件 all_defs.cpp23735 行定义.

23735 {
23736 return get_size_of_get(_m);
23737 }
constexpr struct elc::defs::memory::get_n::get_size_of_get_t get_size_of_get

◆ size_in_byte()

template<typename T >
size_t elc::defs::container::array_n::array_t< T >::size_in_byte ( ) const
inlinenoexcept

在文件 all_defs.cpp23738 行定义.

23738 {
23739 return size()*sizeof(T);
23740 }

◆ swap_with()

template<typename T >
void elc::defs::container::array_n::array_t< T >::swap_with ( this_t a)
inlinenoexcept

在文件 all_defs.cpp23677 行定义.

23677{swap(_m,a._m);}
void swap(array_t< T > &a, array_t< T > &b) noexcept
函数调用图:

友元及相关函数文档

◆ operator+ [1/2]

template<typename T >
template<typename U >
requires (bool(requires{ a.copy()+=b ;}))
this_t operator+ ( const this_t a,
U &&  b 
)
friend

在文件 all_defs.cpp23896 行定义.

23896 {
23897 return a.copy()+=b;
23898 }

◆ operator+ [2/2]

template<typename T >
template<typename U >
requires (bool(requires{ this_t(a)+=b ;}))
this_t operator+ ( U &&  a,
const this_t b 
)
friend

在文件 all_defs.cpp23900 行定义.

23900 {
23901 return this_t(a)+=b;
23902 }

◆ operator+= [1/2]

template<typename T >
template<class U , class enable_state = ::std::enable_if_t< get<T>.apply_end.able >>
this_t & operator+= ( this_t a,
U &&  b 
)
friend

在文件 all_defs.cpp23888 行定义.

23888 {
23889 get<T>.apply_end(note::to(a._m),b);
23890 return a;
23891 }
constexpr to_t< T > to(T v)

◆ operator+= [2/2]

template<typename T >
this_t & operator+= ( this_t a,
zero_t  b 
)
friend

在文件 all_defs.cpp23892 行定义.

23892 {
23893 return a+=T(0);
23894 }

类成员变量说明

◆ forward_resize_nothrow

template<typename T >
constexpr bool elc::defs::container::array_n::array_t< T >::forward_resize_nothrow = get_forward_resize.nothrow<T>
staticconstexpr

在文件 all_defs.cpp23745 行定义.

◆ insert_nothrow

template<typename T >
constexpr bool elc::defs::container::array_n::array_t< T >::insert_nothrow = get_resize.insert.nothrow<T>
staticconstexpr

在文件 all_defs.cpp23749 行定义.

◆ insert_with_forward_resize_nothrow

template<typename T >
constexpr bool elc::defs::container::array_n::array_t< T >::insert_with_forward_resize_nothrow = get_forward_resize.insert_with_resize.nothrow<T>
staticconstexpr

在文件 all_defs.cpp23765 行定义.

◆ resize_nothrow

template<typename T >
constexpr bool elc::defs::container::array_n::array_t< T >::resize_nothrow = get_resize.nothrow<T>
staticconstexpr

在文件 all_defs.cpp23741 行定义.


该类的文档由以下文件生成: