Type-erased abstract source iterator providing addresses to scan.
More...
#include <memory_scanner.hpp>
|
| constexpr | address_source_ref () noexcept=default |
| |
| template<typename Tag , typename Context , typename Traits = address_source_traits<Tag>, std::enable_if_t< std::is_convertible_v< const Context *, const typename Traits::context_type * >, int > = 0> |
| constexpr | address_source_ref (Tag, const Context &ctx RELOCO_LIFETIMEBOUND RELOCO_LIFETIME_CAPTURE_BY_THIS) noexcept |
| |
| template<typename Tag , typename Context , std::enable_if_t<!std::is_lvalue_reference_v< Context >, int > = 0> |
| constexpr | address_source_ref (Tag, Context &&)=delete |
| |
| bool | next (uintptr_t &out_addr) const noexcept |
| |
| constexpr | operator bool () const noexcept |
| |
|
| template<typename Tag , typename Context , typename Traits = address_source_traits<Tag>> |
| static constexpr address_source_ref | make (const Context &ctx RELOCO_LIFETIMEBOUND) noexcept |
| |
| template<typename Tag , typename Context , std::enable_if_t<!std::is_lvalue_reference_v< Context >, int > = 0> |
| static address_source_ref | make (Context &&)=delete |
| |
Type-erased abstract source iterator providing addresses to scan.
◆ address_source_ref() [1/3]
| constexpr microfmt::address_source_ref::address_source_ref |
( |
| ) |
|
|
constexprdefaultnoexcept |
◆ address_source_ref() [2/3]
template<typename Tag , typename Context , typename Traits = address_source_traits<Tag>, std::enable_if_t< std::is_convertible_v< const Context *, const typename Traits::context_type * >, int > = 0>
| constexpr microfmt::address_source_ref::address_source_ref |
( |
Tag |
, |
|
|
const Context &ctx RELOCO_LIFETIMEBOUND |
RELOCO_LIFETIME_CAPTURE_BY_THIS |
|
) |
| |
|
inlineconstexprnoexcept |
◆ address_source_ref() [3/3]
template<typename Tag , typename Context , std::enable_if_t<!std::is_lvalue_reference_v< Context >, int > = 0>
| constexpr microfmt::address_source_ref::address_source_ref |
( |
Tag |
, |
|
|
Context && |
|
|
) |
| |
|
constexprdelete |
◆ make() [1/2]
template<typename Tag , typename Context , typename Traits = address_source_traits<Tag>>
| static constexpr address_source_ref microfmt::address_source_ref::make |
( |
const Context &ctx |
RELOCO_LIFETIMEBOUND | ) |
|
|
inlinestaticconstexprnoexcept |
◆ make() [2/2]
template<typename Tag , typename Context , std::enable_if_t<!std::is_lvalue_reference_v< Context >, int > = 0>
◆ next()
| bool microfmt::address_source_ref::next |
( |
uintptr_t & |
out_addr | ) |
const |
|
inlinenoexcept |
◆ operator bool()
| constexpr microfmt::address_source_ref::operator bool |
( |
| ) |
const |
|
inlineexplicitconstexprnoexcept |
The documentation for this class was generated from the following file: