optionSaveState(3)
πΎ optionSaveState πΎ
Okay bestie, welcome to the optionSaveState(3) page from the Programmer's Manual β this one is short, sweet, and very "save your state before you do chaos" energy. π«Ά
β¨ NAME β¨
optionSaveState β saves the option state to memory. π
π SYNOPSIS π
#include <your-opts.h>
cc [...] -o outfile infile.c -lopts [...]
void optionSaveState(tOptions * pOpts);
πΈ DESCRIPTION πΈ
Okay so this routine will allocate enough memory to save the current option processing state. Lowkey iconic.
If this routine has been called before, that memory will be reused. No cap.
You may only save one copy of the option state β one copy, bestie, that's the rule. π
This routine may be called before optionProcess(3AO). If you do call it before the first call to optionProcess, then you may also change the contents of argc/argv after you call optionRestore(3AO). iykyk.
In fact, more strongly put: it is safest to only use this function before having processed any options. In particular, the saving and restoring of stacked string arguments and hierarchical values is disabled. The values are not saved. π
pOptsβ program options descriptor. That's the vibe check.
π ERRORS π
If it fails to allocate the memory, it will print a message to stderr and exit. Otherwise, it will always succeed. So yeah β fail loud, or slay quietly. π
π SEE ALSO π
The info documentation for the -lopts library. Fr fr, go read it. π
ao_string_tokenize(3), configFileLoad(3), optionFileLoad(3), optionFindNextValue(3), optionFindValue(3), optionFree(3), optionGetValue(3), optionLoadLine(3), optionMemberList(3), optionNextValue(3), optionOnlyUsage(3), optionPrintVersion(3), optionPrintVersionAndReturn(3), optionProcess(3), optionRestore(3), optionSaveFile(3), optionUnloadNested(3), optionVersion(3), strequate(3), streqvcmp(3), streqvmap(3), strneqvcmp(3), strtransform(3),
Byeee, bestie β that was the whole optionSaveState(3) page from the Programmer's Manual, dated 2018-08-26. Go save that state. π¦
π¦ where this page comes from
- debian trixie: libopts25-dev 1:5.18.16-7 Β· GPL-3.0-or-later
- nixpkgs unstable: autogen 5.18.16
- ubuntu questing: libopts25-dev 1:5.18.16-7build1
- ubuntu resolute: libopts25-dev 1:5.18.16-7build2 Β· GPL-3.0-or-later
- ubuntu stonking: libopts25-dev 1:5.18.16-9 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms