ELC in dev
ELC-lang
载入中...
搜索中...
未找到
elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t > 模板结构体 参考

Public 类型

typedef reverse_base_t< base_t_w, value_t > this_t
 
typedef remove_cv< base_t_w > base_t_rw
 

Public 成员函数

template<typename build_base_t_T >
requires (construct<base_t_rw>.able<build_base_t_T>)
constexpr reverse_base_t (build_base_t_T &&a) noexcept(construct< base_t_rw >.nothrow< build_base_t_T >)
 
constexpr reverse_base_t (const this_t &a) noexcept(construct< base_t_rw >.nothrow< const base_t_rw & >)
 
constexpr reverse_base_t (this_t &&a) noexcept(construct< base_t_rw >.nothrow< base_t_rw && >)
 
constexpr this_toperator= (const this_t &a) &noexcept
 
constexpr this_toperator= (this_t &&a) &noexcept
 
constexpr auto operator== (const this_t &a) const noexcept
 
constexpr auto operator<=> (const this_t &a) const noexcept
 
auto get_before () noexcept(is_get_before_noexcept())
 
auto get_next () noexcept(is_get_next_noexcept())
 
auto get_handle () noexcept(is_get_handle_noexcept())
 
decltype(autoget_value () noexcept(is_get_value_noexcept())
 

静态 Public 成员函数

static constexpr bool is_get_before_noexcept () noexcept
 
static constexpr bool is_get_next_noexcept () noexcept
 
static constexpr bool is_able_to_get_handle () noexcept
 
static constexpr bool is_get_handle_noexcept () noexcept
 
static constexpr bool is_able_to_get_value () noexcept
 
static constexpr bool is_get_value_noexcept () noexcept
 

Public 属性

base_t_rw _m
 

静态 Public 属性

static constexpr bool is_pointer =::std::is_pointer_v<base_t_w>
 

详细描述

template<typename base_t_w, typename value_t>
struct elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >

在文件 all_defs.cpp10325 行定义.

成员类型定义说明

◆ base_t_rw

template<typename base_t_w , typename value_t >
typedef remove_cv<base_t_w> elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::base_t_rw

在文件 all_defs.cpp10327 行定义.

◆ this_t

template<typename base_t_w , typename value_t >
typedef reverse_base_t<base_t_w,value_t> elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::this_t

在文件 all_defs.cpp10326 行定义.

构造及析构函数说明

◆ reverse_base_t() [1/3]

template<typename base_t_w , typename value_t >
template<typename build_base_t_T >
requires (construct<base_t_rw>.able<build_base_t_T>)
constexpr elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::reverse_base_t ( build_base_t_T &&  a)
inlineconstexprnoexcept

在文件 all_defs.cpp10330 行定义.

10330:_m(a){}
constexpr T down_cast(U a) noexcept
向下转型至

◆ reverse_base_t() [2/3]

template<typename base_t_w , typename value_t >
constexpr elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::reverse_base_t ( const this_t a)
inlineconstexprnoexcept

在文件 all_defs.cpp10331 行定义.

10331:_m(a._m){}

◆ reverse_base_t() [3/3]

template<typename base_t_w , typename value_t >
constexpr elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::reverse_base_t ( this_t &&  a)
inlineconstexprnoexcept

在文件 all_defs.cpp10332 行定义.

10332:_m(move(a._m)){}
constexpr struct elc::defs::memory::lifetime_n::move_t move

成员函数说明

◆ get_before()

template<typename base_t_w , typename value_t >
auto elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::get_before ( )
inlinenoexcept

在文件 all_defs.cpp10387 行定义.

10387 {
10388 if constexpr(is_pointer)
10389 return _m+1;
10390 else return ((base_t_w&)_m).get_next();
10391 }
auto get_next() noexcept(is_get_next_noexcept())

◆ get_handle()

template<typename base_t_w , typename value_t >
auto elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::get_handle ( )
inlinenoexcept

在文件 all_defs.cpp10397 行定义.

10397 {
10398 if constexpr(is_pointer)
10399 return _m;
10400 else return ((base_t_w&)_m).get_handle();
10401 }
auto get_handle() noexcept(is_get_handle_noexcept())
函数调用图:

◆ get_next()

template<typename base_t_w , typename value_t >
auto elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::get_next ( )
inlinenoexcept

在文件 all_defs.cpp10392 行定义.

10392 {
10393 if constexpr(is_pointer)
10394 return _m-1;
10395 else return ((base_t_w&)_m).get_before();
10396 }
auto get_before() noexcept(is_get_before_noexcept())

◆ get_value()

template<typename base_t_w , typename value_t >
decltype(auto) elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::get_value ( )
inlinenoexcept

在文件 all_defs.cpp10402 行定义.

10402 {
10403 if constexpr(is_pointer)
10404 return *(base_t_w&)_m;
10406 return (base_t_w&)_m;
10407 elseif constexpr(was_not_an_ill_form(declvalue(base_t_w)->get_value()))
10408 return ((base_t_w&)_m)->get_value();
10409 elseif constexpr(was_not_an_ill_form(declvalue(base_t_w).get_value()))
10410 return ((base_t_w&)_m).get_value();
10411 }
#define was_not_an_ill_form(...)
Definition all_defs.cpp:611
#define elseif
Definition all_defs.cpp:650
#define declvalue(...)
Definition all_defs.cpp:556
decltype(auto) get_value() noexcept(is_get_value_noexcept())

◆ is_able_to_get_handle()

template<typename base_t_w , typename value_t >
static constexpr bool elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::is_able_to_get_handle ( )
inlinestaticconstexprnoexcept

在文件 all_defs.cpp10350 行定义.

10350 {
10351 if constexpr(is_pointer)
10352 return true;
10353 elseif constexpr(was_not_an_ill_form(declvalue(base_t_w)->get_handle()))
10354 return true;
10355 }
函数调用图:

◆ is_able_to_get_value()

template<typename base_t_w , typename value_t >
static constexpr bool elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::is_able_to_get_value ( )
inlinestaticconstexprnoexcept

在文件 all_defs.cpp10364 行定义.

10364 {
10365 if constexpr(is_pointer)
10366 return true;
10368 return true;
10369 elseif constexpr(was_not_an_ill_form(declvalue(base_t_w)->get_value()))
10370 return true;
10371 elseif constexpr(was_not_an_ill_form(declvalue(base_t_w).get_value()))
10372 return true;
10373 }

◆ is_get_before_noexcept()

template<typename base_t_w , typename value_t >
static constexpr bool elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::is_get_before_noexcept ( )
inlinestaticconstexprnoexcept

在文件 all_defs.cpp10340 行定义.

10340 {
10341 if constexpr(is_pointer)
10342 return true;
10343 else return noexcept(declvalue(base_t_w).get_next());
10344 }

◆ is_get_handle_noexcept()

template<typename base_t_w , typename value_t >
static constexpr bool elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::is_get_handle_noexcept ( )
inlinestaticconstexprnoexcept

在文件 all_defs.cpp10356 行定义.

10356 {
10357 if constexpr(is_pointer)
10358 return true;
10359 elseif constexpr(was_not_an_ill_form(declvalue(base_t_w)->get_handle()))
10360 return noexcept(declvalue(base_t_w).get_handle());
10361 else
10362 return false;
10363 }
函数调用图:

◆ is_get_next_noexcept()

template<typename base_t_w , typename value_t >
static constexpr bool elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::is_get_next_noexcept ( )
inlinestaticconstexprnoexcept

在文件 all_defs.cpp10345 行定义.

10345 {
10346 if constexpr(is_pointer)
10347 return true;
10348 else return noexcept(declvalue(base_t_w).get_before());
10349 }

◆ is_get_value_noexcept()

template<typename base_t_w , typename value_t >
static constexpr bool elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::is_get_value_noexcept ( )
inlinestaticconstexprnoexcept

在文件 all_defs.cpp10374 行定义.

10374 {
10375 if constexpr(is_pointer)
10376 return true;
10378 return true;
10379 elseif constexpr(was_not_an_ill_form(declvalue(base_t_w)->get_value()))
10380 return noexcept(declvalue(base_t_w)->get_value());
10381 elseif constexpr(was_not_an_ill_form(declvalue(base_t_w).get_value()))
10382 return noexcept(declvalue(base_t_w).get_value());
10383 else
10384 return false;
10385 }

◆ operator<=>()

template<typename base_t_w , typename value_t >
constexpr auto elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::operator<=> ( const this_t a) const
inlineconstexprnoexcept

在文件 all_defs.cpp10336 行定义.

10336{return _m<=>a._m;}

◆ operator=() [1/2]

template<typename base_t_w , typename value_t >
constexpr this_t & elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::operator= ( const this_t a) &
inlineconstexprnoexcept

在文件 all_defs.cpp10333 行定义.

10333{_m=a._m;return*this;}

◆ operator=() [2/2]

template<typename base_t_w , typename value_t >
constexpr this_t & elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::operator= ( this_t &&  a) &
inlineconstexprnoexcept

在文件 all_defs.cpp10334 行定义.

10334{_m=move(a._m);return*this;}

◆ operator==()

template<typename base_t_w , typename value_t >
constexpr auto elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::operator== ( const this_t a) const
inlineconstexprnoexcept

在文件 all_defs.cpp10335 行定义.

10335{return _m==a._m;}

类成员变量说明

◆ _m

template<typename base_t_w , typename value_t >
base_t_rw elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::_m

在文件 all_defs.cpp10328 行定义.

◆ is_pointer

template<typename base_t_w , typename value_t >
constexpr bool elc::defs::base::iterator_n::reverse_base_t< base_t_w, value_t >::is_pointer =::std::is_pointer_v<base_t_w>
staticconstexpr

在文件 all_defs.cpp10338 行定义.


该结构体的文档由以下文件生成: