diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2017-06-01 10:50:49 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2017-06-01 15:42:43 +0200 |
commit | d43fc40718217d89cc95cc3c0bc0b8e7926abcc0 (patch) | |
tree | 45d7dc455932e4eef2d71f92ab7485bc537dfc8d /sax | |
parent | 5ecb3f4625188d02e85a3daef76ccf7f26b33a61 (diff) |
convert SAX_ARGS_ARG macros to varargs template methods
Leave the macros in place for now, because there is still more of this
stuff in sc/../xestream.hxx
Change-Id: I633e12ee572010823e0a223b529a07b00e707b78
Reviewed-on: https://gerrit.libreoffice.org/38295
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Diffstat (limited to 'sax')
-rw-r--r-- | sax/source/tools/fshelper.cxx | 45 |
1 files changed, 11 insertions, 34 deletions
diff --git a/sax/source/tools/fshelper.cxx b/sax/source/tools/fshelper.cxx index 9456743d80bc..1229a8689c29 100644 --- a/sax/source/tools/fshelper.cxx +++ b/sax/source/tools/fshelper.cxx @@ -40,44 +40,21 @@ FastSerializerHelper::~FastSerializerHelper() delete mpSerializer; } -void FastSerializerHelper::startElementInternal(sal_Int32 elementTokenId, ...) -{ - va_list args; - va_start( args, elementTokenId ); - TokenValueList& rAttrList = mpSerializer->getTokenValueList(); - - while (true) - { - sal_Int32 nName = va_arg(args, sal_Int32); - if (nName == FSEND_internal) - break; - const char* pValue = va_arg(args, const char*); - if (pValue) - rAttrList.push_back(TokenValue(nName, pValue)); - } - +void FastSerializerHelper::startElement(sal_Int32 elementTokenId, FSEND_t) +{ mpSerializer->startFastElement(elementTokenId); - va_end( args ); } - -void FastSerializerHelper::singleElementInternal(sal_Int32 elementTokenId, ...) +void FastSerializerHelper::pushAttributeValue(sal_Int32 attribute, const char* value) +{ + mpSerializer->getTokenValueList().push_back(TokenValue(attribute, value)); +} +void FastSerializerHelper::pushAttributeValue(sal_Int32 attribute, const OString& value) +{ + mpSerializer->getTokenValueList().push_back(TokenValue(attribute, value.getStr())); +} +void FastSerializerHelper::singleElement(sal_Int32 elementTokenId, FSEND_t) { - va_list args; - va_start( args, elementTokenId ); - TokenValueList& rAttrList = mpSerializer->getTokenValueList(); - - while (true) - { - sal_Int32 nName = va_arg(args, sal_Int32); - if (nName == FSEND_internal) - break; - const char* pValue = va_arg(args, const char*); - if (pValue) - rAttrList.push_back(TokenValue(nName, pValue)); - } - mpSerializer->singleFastElement(elementTokenId); - va_end( args ); } void FastSerializerHelper::endElement(sal_Int32 elementTokenId) |