|
microfmt
Zero-allocation C++ formatting for constrained environments
|
Owning typed container bound to a compile-time traits dispatcher. More...
#include <remote_container.hpp>
Public Types | |
| using | traits_type = typename Dispatcher::traits_type |
| using | context_type = typename traits_type::context_type |
Public Member Functions | |
| constexpr | basic_remote_container (uintptr_t container_addr, context_type context) noexcept |
| constexpr uintptr_t | container_address () const noexcept |
| constexpr value_ref< context_type > | context () &noexcept RELOCO_LIFETIMEBOUND |
| constexpr value_ref< const context_type > | context () const &noexcept RELOCO_LIFETIMEBOUND |
| value_ref< context_type > | context () &&=delete |
| value_ref< const context_type > | context () const &&=delete |
| constexpr remote_container_view | view (address_space_ref space, span< std::byte > scratch RELOCO_LIFETIMEBOUND, container_options options={}) &noexcept RELOCO_LIFETIMEBOUND |
| remote_container_view | view (address_space_ref, span< std::byte >, container_options={}) &&=delete |
Static Public Member Functions | |
| static bool | format_thunk (void *raw_ctx, address_space_ref space, span< std::byte > scratch, const sink &out, const container_options &opts) noexcept |
Owning typed container bound to a compile-time traits dispatcher.
The context is retained by value. Traversal operations remain compile-time trait calls; only conversion to remote_container_view introduces type erasure.
| using microfmt::basic_remote_container< Tag, Dispatcher >::context_type = typename traits_type::context_type |
| using microfmt::basic_remote_container< Tag, Dispatcher >::traits_type = typename Dispatcher::traits_type |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
delete |
|
inlineconstexprnoexcept |
|
delete |
|
inlineconstexprnoexcept |
|
inlinestaticnoexcept |
|
constexprnoexcept |
|
delete |