sc::PoolData(3)
π sc::PoolData(3) π
okay bestie, welcome to the manual page for sc::PoolData, straight outta the MPQC library, version 2.3.1. this is from the Library Functions Manual, and it's giving very much "low-level memory pool internals" energy. let's get into it π«Ά
β¨ NAME β¨
sc::PoolData β no cap, that's the whole name. it's a class, it's pool data, it's iconic π
πΈ SYNOPSIS πΈ
π Public Types
enum { magic = 0x1f1d1e1c }β yes bestie, a whole anonymous enum with exactly one (1) magic number. periodt.
π¦ Public Member Functions
PoolData (size_t size)
PoolData * next ()
PoolData * prev ()
void next (PoolData *)
void prev (PoolData *)
void prev_next (PoolData *, PoolData *)
PoolData * next_free ()
PoolData * prev_free ()
void next_free (PoolData *)
void prev_free (PoolData *)
void prev_next_free (PoolData *, PoolData *)
void set_magic (int=magic)
void * data ()
void check (void *lower=(void *) 0x0, void *upper=(void *) 0x7fffffffL)
π Public Attributes
int magic_
size_t size_
unsigned int free_:1
unsigned int flags_:15
union {
FreeData f
UsedData u
};
π DESCRIPTION π
so the original manpage is kinda shy and doesn't give us a big paragraph here, but the vibes are immaculate. what we do have is the full menu of public types, member functions, and attributes β and we're gonna go through every single one like it's a group chat recap. no skipping, no summarizing, fr fr.
π Public Types β the details
enum { magic = 0x1f1d1e1c }β this is the magic value, and it is exactly0x1f1d1e1c. not a different number. not "approximately". that's the one. remember it, bestie π§
π Public Member Functions β one by one
PoolData (size_t size)β constructor that takes asize_tcalledsize. that's it, that's the tea.PoolData * next ()β returns aPoolData *. it's the next one. slay.PoolData * prev ()β returns aPoolData *. it's the previous one. also slay.void next (PoolData *)β sets the next pointer from aPoolData *argument. returns nothing.void prev (PoolData *)β sets the previous pointer from aPoolData *argument. returns nothing.void prev_next (PoolData *, PoolData *)β takes twoPoolData *arguments and sets both prev and next at once. efficient queen πPoolData * next_free ()β returns aPoolData *for the next free thing.PoolData * prev_free ()β returns aPoolData *for the previous free thing.void next_free (PoolData *)β sets the next-free pointer from aPoolData *. returns nothing.void prev_free (PoolData *)β sets the previous-free pointer from aPoolData *. returns nothing.void prev_next_free (PoolData *, PoolData *)β takes twoPoolData *arguments and sets both free-list pointers at once. double slay.void set_magic (int=magic)β takes anintand its default is literallymagic(aka0x1f1d1e1c). cute. returns nothing.void * data ()β returns avoid *pointing at the data. the main character of the whole class, honestly.void check (void *lower=(void *) 0x0, void *upper=(void *) 0x7fffffffL)β takes twovoid *args:lowerdefaults to(void *) 0x0andupperdefaults to(void *) 0x7fffffffL. returns nothing. it checks things, bestie.
π Public Attributes β the whole fit
int magic_β anintnamedmagic_. the underscore is part of the name, don't come for her.size_t size_β asize_tnamedsize_. again, underscore stays.unsigned int free_:1β anunsigned intbitfield namedfree_that's exactly1bit wide. tiny but mighty.unsigned int flags_:15β anunsigned intbitfield namedflags_that's exactly15bits wide. that's a lot of flags, ngl.union { FreeData f; UsedData u; };β a union containing aFreeDatamember namedfand aUsedDatamember namedu. two moods, one union π¦
β οΈ heads up: the manpage doesn't spill any extra lore about what each function or field does beyond the signatures above. we are not out here inventing behavior. if you need the deets, go read the source, iykyk.
π Author π
Generated automatically by Doxygen for MPQC from the source code. so it wasn't even a human author, it was Doxygen doing its little automated thing. and honestly? it ate. π
and that's the whole page, bestie π this was sc::PoolData(3) from MPQC, Version 2.3.1, and the footer is literally just that β MPQC and Version 2.3.1 and the page name. no cap, we covered every option, every signature, every default, every bitfield, every union member. mwah πβ¨
π¦ where this page comes from
- fedora 43: mpqc-devel 2.3.1-65.fc43 Β· GPL-2.0-or-later AND LicenseRef-Callaway-LGPLv2+
- fedora 43: mpqc-devel 2.3.1-65.fc43 Β· GPL-2.0-or-later AND LicenseRef-Callaway-LGPLv2+
- ubuntu noble: libsc-doc 2.3.1-22build2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms