summaryrefslogtreecommitdiff
path: root/xmloff/source/core
diff options
context:
space:
mode:
authorDaniel Sikeler <d.sikeler94@gmail.com>2016-08-25 02:19:48 +0530
committerNoel Grandin <noelgrandin@gmail.com>2016-08-26 07:40:39 +0000
commite3b3c3fe41fde28b01ab1b2d8408d92dfa837dc5 (patch)
tree4b72dc0a9df89bbd53ca86de8dee34bf8329f974 /xmloff/source/core
parent674e0f0b43392a7e7fa515dad8427ccc901f7a01 (diff)
Make SvXMLTokenMap compatible with FastTokens:
Added new methods for the fasttokens and a lot of entries must be updated in later commits. Change-Id: I37de9c8d4bdeb75f678902a422a5961670480562 Reviewed-on: https://gerrit.libreoffice.org/28355 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
Diffstat (limited to 'xmloff/source/core')
-rw-r--r--xmloff/source/core/xmltkmap.cxx30
1 files changed, 22 insertions, 8 deletions
diff --git a/xmloff/source/core/xmltkmap.cxx b/xmloff/source/core/xmltkmap.cxx
index 1b5810fc4fb0..6888b62aae60 100644
--- a/xmloff/source/core/xmltkmap.cxx
+++ b/xmloff/source/core/xmltkmap.cxx
@@ -30,22 +30,25 @@ class SvXMLTokenMapEntry_Impl
sal_uInt16 nPrefixKey;
OUString sLocalName;
sal_uInt16 nToken;
+ sal_Int32 nFastToken;
public:
sal_uInt16 GetToken() const { return nToken; }
SvXMLTokenMapEntry_Impl( sal_uInt16 nPrefix, const OUString& rLName,
- sal_uInt16 nTok=XML_TOK_UNKNOWN ) :
+ sal_uInt16 nTok = XML_TOK_UNKNOWN, sal_Int32 nFastTok = 0 ) :
nPrefixKey( nPrefix ),
sLocalName( rLName ),
- nToken( nTok )
+ nToken( nTok ),
+ nFastToken( nFastTok )
{}
explicit SvXMLTokenMapEntry_Impl( const SvXMLTokenMapEntry& rEntry ) :
nPrefixKey( rEntry.nPrefixKey ),
sLocalName( GetXMLToken( rEntry.eLocalName ) ),
- nToken( rEntry.nToken )
+ nToken( rEntry.nToken ),
+ nFastToken( rEntry.nFastToken )
{}
bool operator<( const SvXMLTokenMapEntry_Impl& r ) const
@@ -72,13 +75,10 @@ SvXMLTokenMap::~SvXMLTokenMap()
{
}
-sal_uInt16 SvXMLTokenMap::Get( sal_uInt16 nKeyPrefix,
- const OUString& rLName ) const
+sal_uInt16 SvXMLTokenMap::Get( const SvXMLTokenMapEntry_Impl& rEntry ) const
{
SvXMLTokenMapEntry_Impl const* pEntry = nullptr;
- SvXMLTokenMapEntry_Impl aTst( nKeyPrefix, rLName );
-
- SvXMLTokenMap_Impl::iterator it = m_pImpl->find( aTst );
+ SvXMLTokenMap_Impl::iterator it = m_pImpl->find( rEntry );
if (it != m_pImpl->end())
{
pEntry = &*it;
@@ -90,4 +90,18 @@ sal_uInt16 SvXMLTokenMap::Get( sal_uInt16 nKeyPrefix,
return XML_TOK_UNKNOWN;
}
+sal_uInt16 SvXMLTokenMap::Get( sal_uInt16 nKeyPrefix,
+ const OUString& rLName ) const
+{
+ SvXMLTokenMapEntry_Impl aTst( nKeyPrefix, rLName );
+ return( Get( aTst ) );
+}
+
+sal_uInt16 SvXMLTokenMap::Get( sal_Int32 nFastTok ) const
+{
+ static const OUString sEmptyString("");
+ SvXMLTokenMapEntry_Impl aTst( 0, sEmptyString, XML_TOK_UNKNOWN, nFastTok );
+ return( Get( aTst ) );
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */