diff options
Diffstat (limited to 'dbaccess/source/ui/misc')
-rw-r--r-- | dbaccess/source/ui/misc/DExport.cxx | 24 | ||||
-rw-r--r-- | dbaccess/source/ui/misc/RowSetDrop.cxx | 8 | ||||
-rw-r--r-- | dbaccess/source/ui/misc/UITools.cxx | 16 | ||||
-rw-r--r-- | dbaccess/source/ui/misc/WColumnSelect.cxx | 18 | ||||
-rw-r--r-- | dbaccess/source/ui/misc/WCopyTable.cxx | 18 | ||||
-rw-r--r-- | dbaccess/source/ui/misc/WNameMatch.cxx | 4 | ||||
-rw-r--r-- | dbaccess/source/ui/misc/dbsubcomponentcontroller.cxx | 4 | ||||
-rw-r--r-- | dbaccess/source/ui/misc/dsmeta.cxx | 2 |
8 files changed, 47 insertions, 47 deletions
diff --git a/dbaccess/source/ui/misc/DExport.cxx b/dbaccess/source/ui/misc/DExport.cxx index 446fb5bca164..02d9322ed598 100644 --- a/dbaccess/source/ui/misc/DExport.cxx +++ b/dbaccess/source/ui/misc/DExport.cxx @@ -182,8 +182,8 @@ ODatabaseExport::ODatabaseExport(const SharedConnection& _rxConnection, if(xSet.is()) { ::connectivity::ORowSetValue aValue; - ::std::vector<sal_Int32> aTypes; - ::std::vector<sal_Bool> aNullable; + std::vector<sal_Int32> aTypes; + std::vector<sal_Bool> aNullable; Reference<XResultSetMetaData> xResultSetMetaData = Reference<XResultSetMetaDataSupplier>(xSet,UNO_QUERY_THROW)->getMetaData(); Reference<XRow> xRow(xSet,UNO_QUERY_THROW); while(xSet->next()) @@ -608,8 +608,8 @@ void ODatabaseExport::SetColumnTypes(const TColumnVector* _pList,const OTypeInfo if(aFind != _pInfoMap->end()) { (*aIter)->second->SetType(aFind->second); - (*aIter)->second->SetPrecision(::std::min<sal_Int32>(aFind->second->nPrecision,nLength)); - (*aIter)->second->SetScale(::std::min<sal_Int32>(aFind->second->nMaximumScale,nScale)); + (*aIter)->second->SetPrecision(std::min<sal_Int32>(aFind->second->nPrecision,nLength)); + (*aIter)->second->SetScale(std::min<sal_Int32>(aFind->second->nMaximumScale,nScale)); sal_Int32 nFormatKey = ::dbtools::getDefaultNumberFormat( nDataType, (*aIter)->second->GetScale(), @@ -632,7 +632,7 @@ void ODatabaseExport::CreateDefaultColumn(const OUString& _rColumnName) aAlias = ::dbtools::convertName2SQLName(_rColumnName,xDestMetaData->getExtraNameCharacters()); if(nMaxNameLen && aAlias.getLength() > nMaxNameLen) - aAlias = aAlias.copy(0, ::std::min<sal_Int32>( nMaxNameLen-1, aAlias.getLength() ) ); + aAlias = aAlias.copy(0, std::min<sal_Int32>( nMaxNameLen-1, aAlias.getLength() ) ); OUString sName(aAlias); if(m_aDestColumns.find(sName) != m_aDestColumns.end()) @@ -645,7 +645,7 @@ void ODatabaseExport::CreateDefaultColumn(const OUString& _rColumnName) + OUString::number(++nPos); if(nMaxNameLen && sName.getLength() > nMaxNameLen) { - aAlias = aAlias.copy(0,::std::min<sal_Int32>( nMaxNameLen-nCount, aAlias.getLength() )); + aAlias = aAlias.copy(0,std::min<sal_Int32>( nMaxNameLen-nCount, aAlias.getLength() )); sName = aAlias + OUString::number(nPos); ++nCount; @@ -657,7 +657,7 @@ void ODatabaseExport::CreateDefaultColumn(const OUString& _rColumnName) OFieldDescription* pField = new OFieldDescription(); pField->SetType(m_pTypeInfo); pField->SetName(aAlias); - pField->SetPrecision(::std::min<sal_Int32>((sal_Int32)255,m_pTypeInfo->nPrecision)); + pField->SetPrecision(std::min<sal_Int32>((sal_Int32)255,m_pTypeInfo->nPrecision)); pField->SetScale(0); pField->SetIsNullable(ColumnValue::NULLABLE); pField->SetAutoIncrement(false); @@ -776,7 +776,7 @@ void ODatabaseExport::adjustFormat() OSL_ENSURE((nColPos) < static_cast<sal_Int32>(m_vNumberFormat.size()),"m_vFormatKey: Illegal index for vector"); OSL_ENSURE((nColPos) < static_cast<sal_Int32>(m_vColumnSize.size()),"m_vColumnSize: Illegal index for vector"); m_vNumberFormat[nColPos] = CheckString(m_sTextToken,m_vNumberFormat[nColPos]); - m_vColumnSize[nColPos] = ::std::max<sal_Int32>((sal_Int32)m_vColumnSize[nColPos], m_sTextToken.getLength()); + m_vColumnSize[nColPos] = std::max<sal_Int32>((sal_Int32)m_vColumnSize[nColPos], m_sTextToken.getLength()); } } eraseTokens(); @@ -829,11 +829,11 @@ Reference< XPreparedStatement > ODatabaseExport::createPreparedStatment( const R return Reference< XPreparedStatement > (); } const OUString* pIter = aDestColumnNames.getConstArray(); - ::std::vector< OUString> aInsertList; + std::vector< OUString> aInsertList; aInsertList.resize(aDestColumnNames.getLength()+1); for(size_t j=0; j < aInsertList.size(); ++j) { - ODatabaseExport::TPositions::const_iterator aFind = ::std::find_if(_rvColumns.begin(),_rvColumns.end(), + ODatabaseExport::TPositions::const_iterator aFind = std::find_if(_rvColumns.begin(),_rvColumns.end(), [j] (const ODatabaseExport::TPositions::value_type& tPos) { return tPos.second == (sal_Int32)(j+1); }); if ( _rvColumns.end() != aFind && aFind->second != sal::static_int_cast< long >(CONTAINER_ENTRY_NOTFOUND) && aFind->first != sal::static_int_cast< long >(CONTAINER_ENTRY_NOTFOUND) ) @@ -844,8 +844,8 @@ Reference< XPreparedStatement > ODatabaseExport::createPreparedStatment( const R } // create the sql string - ::std::vector< OUString>::const_iterator aInsertEnd = aInsertList.end(); - for (::std::vector< OUString>::const_iterator aInsertIter = aInsertList.begin(); aInsertIter != aInsertEnd; ++aInsertIter) + std::vector< OUString>::const_iterator aInsertEnd = aInsertList.end(); + for (std::vector< OUString>::const_iterator aInsertIter = aInsertList.begin(); aInsertIter != aInsertEnd; ++aInsertIter) { if ( !aInsertIter->isEmpty() ) { diff --git a/dbaccess/source/ui/misc/RowSetDrop.cxx b/dbaccess/source/ui/misc/RowSetDrop.cxx index e006693b208a..944b8b6d631c 100644 --- a/dbaccess/source/ui/misc/RowSetDrop.cxx +++ b/dbaccess/source/ui/misc/RowSetDrop.cxx @@ -100,8 +100,8 @@ bool ORowSetImportExport::Write() bool ORowSetImportExport::Read() { // check if there is any column to copy - if(::std::find_if(m_aColumnMapping.begin(),m_aColumnMapping.end(), - ::std::bind2nd(::std::greater<sal_Int32>(),0)) == m_aColumnMapping.end()) + if(std::find_if(m_aColumnMapping.begin(),m_aColumnMapping.end(), + std::bind2nd(std::greater<sal_Int32>(),0)) == m_aColumnMapping.end()) return false; bool bContinue = true; if(m_aSelection.getLength()) @@ -157,8 +157,8 @@ bool ORowSetImportExport::insertNewRow() { m_xTargetResultSetUpdate->moveToInsertRow(); sal_Int32 i = 1; - ::std::vector<sal_Int32>::const_iterator aEnd = m_aColumnMapping.end(); - for (::std::vector<sal_Int32>::const_iterator aIter = m_aColumnMapping.begin(); aIter != aEnd ;++aIter,++i ) + std::vector<sal_Int32>::const_iterator aEnd = m_aColumnMapping.end(); + for (std::vector<sal_Int32>::const_iterator aIter = m_aColumnMapping.begin(); aIter != aEnd ;++aIter,++i ) { if(*aIter > 0) { diff --git a/dbaccess/source/ui/misc/UITools.cxx b/dbaccess/source/ui/misc/UITools.cxx index 987a4ea4d0fc..e0df88e01f13 100644 --- a/dbaccess/source/ui/misc/UITools.cxx +++ b/dbaccess/source/ui/misc/UITools.cxx @@ -297,7 +297,7 @@ TOTypeInfoSP getTypeInfoFromType(const OTypeInfoMap& _rTypeInfo, TOTypeInfoSP pTypeInfo; _brForceToType = false; // search for type - ::std::pair<OTypeInfoMap::const_iterator, OTypeInfoMap::const_iterator> aPair = _rTypeInfo.equal_range(_nType); + std::pair<OTypeInfoMap::const_iterator, OTypeInfoMap::const_iterator> aPair = _rTypeInfo.equal_range(_nType); OTypeInfoMap::const_iterator aIter = aPair.first; if(aIter != _rTypeInfo.end()) // compare with end is correct here { @@ -427,7 +427,7 @@ TOTypeInfoSP getTypeInfoFromType(const OTypeInfoMap& _rTypeInfo, void fillTypeInfo( const Reference< css::sdbc::XConnection>& _rxConnection, const OUString& _rsTypeNames, OTypeInfoMap& _rTypeInfoMap, - ::std::vector<OTypeInfoMap::iterator>& _rTypeInfoIters) + std::vector<OTypeInfoMap::iterator>& _rTypeInfoIters) { if(!_rxConnection.is()) return; @@ -438,8 +438,8 @@ void fillTypeInfo( const Reference< css::sdbc::XConnection>& _rxConnection, { Reference<XResultSetMetaData> xResultSetMetaData = Reference<XResultSetMetaDataSupplier>(xRs,UNO_QUERY)->getMetaData(); ::connectivity::ORowSetValue aValue; - ::std::vector<sal_Int32> aTypes; - ::std::vector<sal_Bool> aNullable; + std::vector<sal_Int32> aTypes; + std::vector<sal_Bool> aNullable; // Loop on the result set until we reach end of file while (xRs->next()) { @@ -1038,14 +1038,14 @@ void fillAutoIncrementValue(const Reference<XPropertySet>& _xDatasource, _xDatasource->getPropertyValue(PROPERTY_INFO) >>= aInfo; // search the right propertyvalue - const PropertyValue* pValue =::std::find_if(aInfo.getConstArray(), + const PropertyValue* pValue =std::find_if(aInfo.getConstArray(), aInfo.getConstArray() + aInfo.getLength(), - ::std::bind2nd(TPropertyValueEqualFunctor(),PROPERTY_AUTOINCREMENTCREATION)); + std::bind2nd(TPropertyValueEqualFunctor(),PROPERTY_AUTOINCREMENTCREATION)); if ( pValue && pValue != (aInfo.getConstArray() + aInfo.getLength()) ) pValue->Value >>= _rsAutoIncrementValue; - pValue =::std::find_if(aInfo.getConstArray(), + pValue =std::find_if(aInfo.getConstArray(), aInfo.getConstArray() + aInfo.getLength(), - ::std::bind2nd(TPropertyValueEqualFunctor(),OUString("IsAutoRetrievingEnabled") )); + std::bind2nd(TPropertyValueEqualFunctor(),OUString("IsAutoRetrievingEnabled") )); if ( pValue && pValue != (aInfo.getConstArray() + aInfo.getLength()) ) pValue->Value >>= _rAutoIncrementValueEnabled; } diff --git a/dbaccess/source/ui/misc/WColumnSelect.cxx b/dbaccess/source/ui/misc/WColumnSelect.cxx index a83eb94c9bc7..460bebf4fa4b 100644 --- a/dbaccess/source/ui/misc/WColumnSelect.cxx +++ b/dbaccess/source/ui/misc/WColumnSelect.cxx @@ -220,7 +220,7 @@ IMPL_LINK( OWizColumnSelect, ButtonClickHdl, Button *, pButton, void ) sal_Int32 nMaxNameLen = m_pParent->getMaxColumnNameLength(); ::comphelper::UStringMixEqual aCase(xMetaData->supportsMixedCaseQuotedIdentifiers()); - ::std::vector< OUString> aRightColumns; + std::vector< OUString> aRightColumns; fillColumns(pRight,aRightColumns); if(!bAll) @@ -266,7 +266,7 @@ IMPL_LINK( OWizColumnSelect, ListDoubleClickHdl, ListBox&, rListBox, void ) sal_Int32 nMaxNameLen = m_pParent->getMaxColumnNameLength(); ::comphelper::UStringMixEqual aCase(xMetaData->supportsMixedCaseQuotedIdentifiers()); - ::std::vector< OUString> aRightColumns; + std::vector< OUString> aRightColumns; fillColumns(pRight,aRightColumns); for(sal_Int32 i=0; i < pLeft->GetSelectEntryCount(); ++i) @@ -284,7 +284,7 @@ void OWizColumnSelect::clearListBox(ListBox& _rListBox) _rListBox.Clear(); } -void OWizColumnSelect::fillColumns(ListBox* pRight,::std::vector< OUString> &_rRightColumns) +void OWizColumnSelect::fillColumns(ListBox* pRight,std::vector< OUString> &_rRightColumns) { const sal_Int32 nCount = pRight->GetEntryCount(); _rRightColumns.reserve(nCount); @@ -294,7 +294,7 @@ void OWizColumnSelect::fillColumns(ListBox* pRight,::std::vector< OUString> &_rR void OWizColumnSelect::createNewColumn( ListBox* _pListbox, OFieldDescription* _pSrcField, - ::std::vector< OUString>& _rRightColumns, + std::vector< OUString>& _rRightColumns, const OUString& _sColumnName, const OUString& _sExtraChars, sal_Int32 _nMaxNameLen, @@ -320,7 +320,7 @@ void OWizColumnSelect::createNewColumn( ListBox* _pListbox, void OWizColumnSelect::moveColumn( ListBox* _pRight, ListBox* _pLeft, - ::std::vector< OUString>& _rRightColumns, + std::vector< OUString>& _rRightColumns, const OUString& _sColumnName, const OUString& _sExtraChars, sal_Int32 _nMaxNameLen, @@ -335,7 +335,7 @@ void OWizColumnSelect::moveColumn( ListBox* _pRight, else { // find the new column in the dest name mapping to obtain the old column - OCopyTableWizard::TNameMapping::const_iterator aIter = ::std::find_if(m_pParent->m_mNameMapping.begin(),m_pParent->m_mNameMapping.end(), + OCopyTableWizard::TNameMapping::const_iterator aIter = std::find_if(m_pParent->m_mNameMapping.begin(),m_pParent->m_mNameMapping.end(), [&_aCase, &_sColumnName] (const OCopyTableWizard::TNameMapping::value_type& nameMap) { return _aCase(nameMap.second, _sColumnName); }); @@ -349,7 +349,7 @@ void OWizColumnSelect::moveColumn( ListBox* _pRight, { // we need also the old position of this column to insert it back on that position again const ODatabaseExport::TColumnVector& rSrcVector = m_pParent->getSrcVector(); - ODatabaseExport::TColumnVector::const_iterator aPos = ::std::find(rSrcVector.begin(), rSrcVector.end(), aSrcIter); + ODatabaseExport::TColumnVector::const_iterator aPos = std::find(rSrcVector.begin(), rSrcVector.end(), aSrcIter); OSL_ENSURE( aPos != rSrcVector.end(),"Invalid position for the iterator here!"); ODatabaseExport::TColumnVector::size_type nPos = (aPos - rSrcVector.begin()) - adjustColumnPosition(_pLeft, _sColumnName, (aPos - rSrcVector.begin()), _aCase); @@ -384,7 +384,7 @@ sal_Int32 OWizColumnSelect::adjustColumnPosition( ListBox* _pLeft, if(_sColumnName != sColumnString) { // find the new column in the dest name mapping to obtain the old column - OCopyTableWizard::TNameMapping::const_iterator aIter = ::std::find_if(m_pParent->m_mNameMapping.begin(),m_pParent->m_mNameMapping.end(), + OCopyTableWizard::TNameMapping::const_iterator aIter = std::find_if(m_pParent->m_mNameMapping.begin(),m_pParent->m_mNameMapping.end(), [&_aCase, &sColumnString] (const OCopyTableWizard::TNameMapping::value_type& nameMap) { return _aCase(nameMap.second, sColumnString); }); @@ -396,7 +396,7 @@ sal_Int32 OWizColumnSelect::adjustColumnPosition( ListBox* _pLeft, { // we need also the old position of this column to insert it back on that position again const ODatabaseExport::TColumnVector& rSrcVector = m_pParent->getSrcVector(); - ODatabaseExport::TColumnVector::const_iterator aPos = ::std::find(rSrcVector.begin(), rSrcVector.end(), aSrcIter); + ODatabaseExport::TColumnVector::const_iterator aPos = std::find(rSrcVector.begin(), rSrcVector.end(), aSrcIter); ODatabaseExport::TColumnVector::size_type nPos = aPos - rSrcVector.begin(); if( nPos < nCurrentPos) { diff --git a/dbaccess/source/ui/misc/WCopyTable.cxx b/dbaccess/source/ui/misc/WCopyTable.cxx index e259e29b369c..1457bea1227c 100644 --- a/dbaccess/source/ui/misc/WCopyTable.cxx +++ b/dbaccess/source/ui/misc/WCopyTable.cxx @@ -152,9 +152,9 @@ void ObjectCopySource::copyUISettingsTo( const Reference< XPropertySet >& _rxObj void ObjectCopySource::copyFilterAndSortingTo( const Reference< XConnection >& _xConnection,const Reference< XPropertySet >& _rxObject ) const { - ::std::pair< OUString, OUString > aProperties[] = { - ::std::pair< OUString, OUString >(PROPERTY_FILTER,OUString(" AND ")) - ,::std::pair< OUString, OUString >(PROPERTY_ORDER,OUString(" ORDER BY ")) + std::pair< OUString, OUString > aProperties[] = { + std::pair< OUString, OUString >(PROPERTY_FILTER,OUString(" AND ")) + ,std::pair< OUString, OUString >(PROPERTY_ORDER,OUString(" ORDER BY ")) }; try @@ -340,7 +340,7 @@ void NamedTableCopySource::impl_ensureColumnInfo_throw() Sequence< OUString > NamedTableCopySource::getColumnNames() const { Sequence< OUString > aNames( m_aColumnInfo.size() ); - for ( ::std::vector< OFieldDescription >::const_iterator col = m_aColumnInfo.begin(); + for ( std::vector< OFieldDescription >::const_iterator col = m_aColumnInfo.begin(); col != m_aColumnInfo.end(); ++col ) @@ -374,7 +374,7 @@ Sequence< OUString > NamedTableCopySource::getPrimaryKeyColumnNames() const OFieldDescription* NamedTableCopySource::createFieldDescription( const OUString& _rColumnName ) const { - for ( ::std::vector< OFieldDescription >::const_iterator col = m_aColumnInfo.begin(); + for ( std::vector< OFieldDescription >::const_iterator col = m_aColumnInfo.begin(); col != m_aColumnInfo.end(); ++col ) @@ -795,7 +795,7 @@ bool OCopyTableWizard::CheckColumns(sal_Int32& _rnBreakPos) if ( aDestIter != m_vDestColumns.end() ) { - ODatabaseExport::TColumnVector::const_iterator aFind = ::std::find(m_aDestVec.begin(),m_aDestVec.end(),aDestIter); + ODatabaseExport::TColumnVector::const_iterator aFind = std::find(m_aDestVec.begin(),m_aDestVec.end(),aDestIter); sal_Int32 nPos = (aFind - m_aDestVec.begin())+1; m_vColumnPos.push_back(ODatabaseExport::TPositions::value_type(nPos,nPos)); m_vColumnTypes.push_back((*aFind)->second->GetType()); @@ -873,7 +873,7 @@ IMPL_LINK_NOARG(OCopyTableWizard, ImplOKHdl, Button*, void) { if ( supportsPrimaryKey() ) { - ODatabaseExport::TColumns::const_iterator aFind = ::std::find_if(m_vDestColumns.begin(),m_vDestColumns.end(), + ODatabaseExport::TColumns::const_iterator aFind = std::find_if(m_vDestColumns.begin(),m_vDestColumns.end(), [] (const ODatabaseExport::TColumns::value_type& tCol) { return tCol.second->IsPrimaryKey(); }); if ( aFind == m_vDestColumns.end() && m_xInteractionHandler.is() ) { @@ -1270,10 +1270,10 @@ Reference< XPropertySet > OCopyTableWizard::createTable() if ( aDestIter != m_vDestColumns.end() ) { - ODatabaseExport::TColumnVector::const_iterator aFind = ::std::find(m_aDestVec.begin(),m_aDestVec.end(),aDestIter); + ODatabaseExport::TColumnVector::const_iterator aFind = std::find(m_aDestVec.begin(),m_aDestVec.end(),aDestIter); sal_Int32 nPos = (aFind - m_aDestVec.begin())+1; - ODatabaseExport::TPositions::iterator aPosFind = ::std::find_if( + ODatabaseExport::TPositions::iterator aPosFind = std::find_if( m_vColumnPos.begin(), m_vColumnPos.end(), [nPos] (const ODatabaseExport::TPositions::value_type& tPos) { diff --git a/dbaccess/source/ui/misc/WNameMatch.cxx b/dbaccess/source/ui/misc/WNameMatch.cxx index ee457f1b945e..410d6a01942b 100644 --- a/dbaccess/source/ui/misc/WNameMatch.cxx +++ b/dbaccess/source/ui/misc/WNameMatch.cxx @@ -154,7 +154,7 @@ bool OWizNameMatching::LeavePage() ODatabaseExport::TColumnVector::const_iterator aSrcEnd = rSrcColumns.end(); for(;aSrcIter != aSrcEnd && (*aSrcIter)->second != pSrcField;++aSrcIter) ; - const sal_Int32 nPos = ::std::distance(rSrcColumns.begin(),aSrcIter); + const sal_Int32 nPos = std::distance(rSrcColumns.begin(),aSrcIter); if(m_pCTRL_LEFT->GetCheckButtonState(pLeftEntry) == SvButtonState::Checked) { @@ -169,7 +169,7 @@ bool OWizNameMatching::LeavePage() OSL_ENSURE((nPos) < static_cast<sal_Int32>(m_pParent->m_vColumnPos.size()),"m_pParent->m_vColumnPos: Illegal index for vector"); m_pParent->m_vColumnPos[nPos].first = ++nParamPos; - m_pParent->m_vColumnPos[nPos].second = ::std::distance(rDestColumns.begin(),aDestIter) + 1; + m_pParent->m_vColumnPos[nPos].second = std::distance(rDestColumns.begin(),aDestIter) + 1; TOTypeInfoSP pTypeInfo; diff --git a/dbaccess/source/ui/misc/dbsubcomponentcontroller.cxx b/dbaccess/source/ui/misc/dbsubcomponentcontroller.cxx index 9b4ea9eaf3f9..82a5d90e8e7f 100644 --- a/dbaccess/source/ui/misc/dbsubcomponentcontroller.cxx +++ b/dbaccess/source/ui/misc/dbsubcomponentcontroller.cxx @@ -227,11 +227,11 @@ namespace dbaui if ( !m_pImpl->documentHasScriptSupport() ) { Sequence< Type > aStrippedTypes( aTypes.getLength() - 1 ); - ::std::remove_copy_if( + std::remove_copy_if( aTypes.getConstArray(), aTypes.getConstArray() + aTypes.getLength(), aStrippedTypes.getArray(), - ::std::bind2nd( ::std::equal_to< Type >(), cppu::UnoType<XScriptInvocationContext>::get() ) + std::bind2nd( std::equal_to< Type >(), cppu::UnoType<XScriptInvocationContext>::get() ) ); aTypes = aStrippedTypes; } diff --git a/dbaccess/source/ui/misc/dsmeta.cxx b/dbaccess/source/ui/misc/dsmeta.cxx index 89c0d556a013..4e8da229b874 100644 --- a/dbaccess/source/ui/misc/dsmeta.cxx +++ b/dbaccess/source/ui/misc/dsmeta.cxx @@ -86,7 +86,7 @@ namespace dbaui static const FeatureSet& lcl_getFeatureSet( const OUString& _rURL ) { - typedef ::std::map< OUString, FeatureSet > FeatureSets; + typedef std::map< OUString, FeatureSet > FeatureSets; static FeatureSets s_aFeatureSets; if ( s_aFeatureSets.empty() ) { |