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

Public 成员函数

constexpr roots_t () noexcept=default
 
 ~roots_t () noexcept=default
 
template<class... Args>
requires (bool(requires{ ((::std::declval< decltype( _roots ) >())). map ((::std::declval< Args >())...) ;}))
auto map (Args &&...rest) noexcept(noexcept((((::std::declval< decltype(_roots) >())). map((::std::declval< Args >())...))))
 
template<class... Args>
requires (bool(requires{ ((::std::declval< decltype( _roots ) >())). add ((::std::declval< Args >())...) ;}))
auto add (Args &&...rest) noexcept(noexcept((((::std::declval< decltype(_roots) >())). add((::std::declval< Args >())...))))
 
template<class... Args>
requires (bool(requires{ ((::std::declval< decltype( _roots ) >())). remove ((::std::declval< Args >())...) ;}))
auto remove (Args &&...rest) noexcept(noexcept((((::std::declval< decltype(_roots) >())). remove((::std::declval< Args >())...))))
 
template<class... Args>
requires (bool(requires{ ((::std::declval< decltype( _roots ) >())). for_each ((::std::declval< Args >())...) ;}))
auto for_each (Args &&...rest) noexcept(noexcept((((::std::declval< decltype(_roots) >())). for_each((::std::declval< Args >())...))))
 
void map_and_mark () noexcept(noexcept(((::std::declval< value_t >()) ->map_and_mark())))
 

详细描述

template<typename T>
class elc::defs::memory::gc_n::roots_t< T >

在文件 all_defs.cpp26089 行定义.

构造及析构函数说明

◆ roots_t()

template<typename T >
constexpr elc::defs::memory::gc_n::roots_t< T >::roots_t ( )
constexprdefaultnoexcept

◆ ~roots_t()

template<typename T >
elc::defs::memory::gc_n::roots_t< T >::~roots_t ( )
defaultnoexcept

成员函数说明

◆ add()

template<typename T >
template<class... Args>
requires (bool(requires{ ((::std::declval< decltype( _roots ) >())). add ((::std::declval< Args >())...) ;}))
auto elc::defs::memory::gc_n::roots_t< T >::add ( Args &&...  rest)
inlinenoexcept

在文件 all_defs.cpp26100 行定义.

◆ for_each()

template<typename T >
template<class... Args>
requires (bool(requires{ ((::std::declval< decltype( _roots ) >())). for_each ((::std::declval< Args >())...) ;}))
auto elc::defs::memory::gc_n::roots_t< T >::for_each ( Args &&...  rest)
inlinenoexcept

在文件 all_defs.cpp26102 行定义.

这是这个函数的调用关系图:

◆ map()

template<typename T >
template<class... Args>
requires (bool(requires{ ((::std::declval< decltype( _roots ) >())). map ((::std::declval< Args >())...) ;}))
auto elc::defs::memory::gc_n::roots_t< T >::map ( Args &&...  rest)
inlinenoexcept

在文件 all_defs.cpp26099 行定义.

◆ map_and_mark()

template<typename T >
void elc::defs::memory::gc_n::roots_t< T >::map_and_mark ( )
inlinenoexcept

在文件 all_defs.cpp26104 行定义.

26104 {
26105 _roots.for_each(
26106 λ(value_t&a)noexcept_as(a->map_and_mark())
26107 {
26108 a->map_and_mark();
26109 }
26110 );
26111 }
#define λ
Definition all_defs.cpp:623
#define noexcept_as(...)
Definition all_defs.cpp:524
constexpr T down_cast(U a) noexcept
向下转型至
函数调用图:

◆ remove()

template<typename T >
template<class... Args>
requires (bool(requires{ ((::std::declval< decltype( _roots ) >())). remove ((::std::declval< Args >())...) ;}))
auto elc::defs::memory::gc_n::roots_t< T >::remove ( Args &&...  rest)
inlinenoexcept

在文件 all_defs.cpp26101 行定义.


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