|
microfmt
Zero-allocation C++ formatting for constrained environments
|
Remote object dumping, layout macros, and string pointer wrappers with 32-bit compatibility support. More...
#include "../microfmt.hpp"#include "compat32.hpp"#include "foreign_string_view.hpp"#include <cstddef>#include <cstdint>#include <type_traits>

Go to the source code of this file.
Classes | |
| struct | microfmt::remote_field_desc |
| Static descriptor for a single field in a remote structure layout. More... | |
| struct | microfmt::remote_field_traits< T, Enable > |
| Default field formatter policy. Can be specialized or overloaded for custom remote types, smart pointers, etc. More... | |
| struct | microfmt::remote_field_traits< string_ptr > |
| struct | microfmt::remote_field_traits< string32_ptr > |
| class | microfmt::string_ptr |
| 64-bit/Native remote string pointer wrapper. More... | |
| struct | microfmt::formatter< string_ptr > |
| struct | microfmt::formatter< string32_ptr > |
| struct | microfmt::remote_object_traits< T, Enable > |
| Traits customization point for remote object metadata. More... | |
| struct | microfmt::type_tag< T > |
| class | microfmt::remote_object_view |
| struct | microfmt::formatter< remote_object_view > |
Namespaces | |
| namespace | microfmt |
Macros | |
| #define | MICROFMT_REMOTE_STRUCT_BEGIN(StructName) |
| #define | MICROFMT_REMOTE_FIELD(Name, ...) {#Name, offsetof(CurrentStruct, Name), µfmt::remote_field_traits<__VA_ARGS__>::format}, |
| #define | MICROFMT_REMOTE_STRUCT_END() |
Typedefs | |
| using | microfmt::remote_field_format_fn = void(*)(address_space_ref space, const void *field_ptr, span< char > work_buf, const sink &out) noexcept |
| Type-erased function pointer for formatting a single remote object field from a loaded local struct buffer. | |
Functions | |
| class MICROFMT_API_CLASS | microfmt::alignas (uint32_t) string32_ptr |
| 32-bit compatibility string pointer wrapper (for 64-bit hosts). | |
Variables | |
| microfmt::RELOCO_END_UNSAFE_CODE | |
Remote object dumping, layout macros, and string pointer wrappers with 32-bit compatibility support.
| #define MICROFMT_REMOTE_FIELD | ( | Name, | |
| ... | |||
| ) | {#Name, offsetof(CurrentStruct, Name), µfmt::remote_field_traits<__VA_ARGS__>::format}, |
| #define MICROFMT_REMOTE_STRUCT_BEGIN | ( | StructName | ) |
| #define MICROFMT_REMOTE_STRUCT_END | ( | ) |