mirror of
https://github.com/sigmasternchen/libparcival
synced 2025-03-15 11:58:53 +00:00
added hidden functions for direct use of va_lists
This commit is contained in:
parent
621d1765a3
commit
a65f394284
1 changed files with 13 additions and 5 deletions
|
@ -57,7 +57,7 @@ void _registerTemplate(const char* name, template_t f, template_length_t s) {
|
|||
static size_t emptyTemplateSize(va_list _) { return 0; }
|
||||
static void emptyTemplate(FILE* out, va_list _) { }
|
||||
|
||||
void renderTemplate(const char* name, FILE* out, ...) {
|
||||
void _renderTemplate(const char* name, FILE* out, va_list argptr) {
|
||||
template_t t = _findTemplate(name);
|
||||
|
||||
if (t == NULL) {
|
||||
|
@ -65,15 +65,19 @@ void renderTemplate(const char* name, FILE* out, ...) {
|
|||
t = &emptyTemplate;
|
||||
}
|
||||
|
||||
t(out, argptr);
|
||||
}
|
||||
|
||||
void renderTemplate(const char* name, FILE* out, ...) {
|
||||
va_list argptr;
|
||||
va_start(argptr, out);
|
||||
|
||||
t(out, argptr);
|
||||
_renderTemplate(name, out, argptr);
|
||||
|
||||
va_end(argptr);
|
||||
}
|
||||
|
||||
size_t sizeTemplate(const char* name, ...) {
|
||||
size_t _sizeTemplate(const char* name, va_list argptr) {
|
||||
template_length_t s = _findTemplateSize(name);
|
||||
|
||||
if (s == NULL) {
|
||||
|
@ -81,12 +85,16 @@ size_t sizeTemplate(const char* name, ...) {
|
|||
s = &emptyTemplateSize;
|
||||
}
|
||||
|
||||
return s(argptr);
|
||||
}
|
||||
|
||||
size_t sizeTemplate(const char* name, ...) {
|
||||
size_t result;
|
||||
|
||||
va_list argptr;
|
||||
va_start(argptr, name);
|
||||
|
||||
result = s(argptr);
|
||||
result = _sizeTemplate(name, argptr);
|
||||
|
||||
va_end(argptr);
|
||||
|
||||
|
|
Loading…
Reference in a new issue