Lumiera
0.pre.03
»edit your freedom«
|
#include "lib/meta/size-trait.hpp"
A collection of constants to describe the expected size of some known classes, without needing to include the respective headers.
This is an optimisation to improve compilation times and/or reduce size of the generated object files in debug mode. To get those sizes computed in a fairly portable way, but without much overhead, we mimic the memory layout of "the real thing" with some reasonable simplifications:
Definition at line 77 of file size-trait.hpp.
Public Types | |
enum | { ALIGNMENT = sizeof(size_t), STRING = sizeof(std::string), VECTOR = sizeof(Vector), BVECTOR = sizeof(BVector), BOOST_FORMAT = sizeof(BoostFormat) } |
Classes | |
struct | BasicAltstringbuf |
struct | BasicStringbuf |
struct | BoostFormat |
struct | CompatAllocator |
struct | Locale |
struct | Optional |
struct lib::meta::SizeTrait::BoostFormat |
Class Members | ||
---|---|---|
Vector | items_ | |
BVector | bound_ | |
int | style_ | |
int | cur_arg_ | |
int | num_args_ | |
bool | dumped_ | |
string | prefix_ | |
unsigned char | exceptions | |
BasicAltstringbuf | buf_ | |
Optional< Locale > | loc_ |
struct lib::meta::SizeTrait::Locale |
struct lib::meta::SizeTrait::Optional |