modernize C++: make unique

This commit is contained in:
wmayer
2023-08-07 20:01:45 +02:00
committed by Chris Hennes
parent c2e17824fa
commit ec73caa40e
30 changed files with 134 additions and 124 deletions

View File

@@ -164,8 +164,9 @@ void PropertyExpressionEngine::hasSetValue()
}
}
if(hasHidden) {
if(!pimpl)
pimpl.reset(new Private);
if(!pimpl) {
pimpl = std::make_unique<Private>();
}
for(auto &e : expressions) {
auto expr = e.second.expression;
if(!expr) continue;
@@ -296,7 +297,7 @@ void PropertyExpressionEngine::Restore(Base::XMLReader &reader)
if(reader.hasAttribute("xlink") && reader.getAttributeAsInteger("xlink"))
PropertyExpressionContainer::Restore(reader);
restoredExpressions.reset(new std::vector<RestoredExpression>);
restoredExpressions = std::make_unique<std::vector<RestoredExpression>>();
restoredExpressions->reserve(count);
for (int i = 0; i < count; ++i) {
@@ -968,7 +969,7 @@ Property *PropertyExpressionEngine::CopyOnImportExternal(
if(!expr && !engine)
continue;
if(!engine) {
engine.reset(new PropertyExpressionEngine);
engine = std::make_unique<PropertyExpressionEngine>();
for(auto it2=expressions.begin();it2!=it;++it2) {
engine->expressions[it2->first] = ExpressionInfo(
std::shared_ptr<Expression>(it2->second.expression->copy()));
@@ -996,7 +997,7 @@ Property *PropertyExpressionEngine::CopyOnLabelChange(App::DocumentObject *obj,
if(!expr && !engine)
continue;
if(!engine) {
engine.reset(new PropertyExpressionEngine);
engine = std::make_unique<PropertyExpressionEngine>();
for(auto it2=expressions.begin();it2!=it;++it2) {
ExpressionInfo info;
if (it2->second.expression)
@@ -1028,7 +1029,7 @@ Property *PropertyExpressionEngine::CopyOnLinkReplace(const App::DocumentObject
if(!expr && !engine)
continue;
if(!engine) {
engine.reset(new PropertyExpressionEngine);
engine = std::make_unique<PropertyExpressionEngine>();
for(auto it2=expressions.begin();it2!=it;++it2) {
ExpressionInfo info;
if (it2->second.expression)