summaryrefslogtreecommitdiff
path: root/compilerplugins/clang/cstylecast.cxx
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2019-04-18 15:13:19 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2019-04-19 13:19:31 +0200
commit1a5b12aa5da2c718848d3cc5d9bce7bfcdeacf54 (patch)
tree25044edc2afb99073ba6bef8d181dadbb6a53467 /compilerplugins/clang/cstylecast.cxx
parenteaaaad0e21edb27edaa865eee03696f007cd8010 (diff)
optimise find/insert pattern
if we're doing a find/insert on a set or a map, it is better to just do a conditional insert/emplace operation than triggering two lookups. Change-Id: I80da5097f5a89fe30fa348ce5b6e747c34287a8d Reviewed-on: https://gerrit.libreoffice.org/70937 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'compilerplugins/clang/cstylecast.cxx')
-rw-r--r--compilerplugins/clang/cstylecast.cxx6
1 files changed, 2 insertions, 4 deletions
diff --git a/compilerplugins/clang/cstylecast.cxx b/compilerplugins/clang/cstylecast.cxx
index 253f19ef651c..fe3b2a19c561 100644
--- a/compilerplugins/clang/cstylecast.cxx
+++ b/compilerplugins/clang/cstylecast.cxx
@@ -603,8 +603,7 @@ bool CStyleCast::rewriteArithmeticCast(CStyleCastExpr const * expr, char const *
secondBegin = l;
++secondLen;
}
- if (rewritten_.find(firstBegin) == rewritten_.end()) {
- rewritten_.insert(firstBegin);
+ if (rewritten_.insert(firstBegin).second) {
if (!replaceText(firstBegin, firstLen, functional ? "" : "static_cast<")) {
if (isDebugMode()) {
report(
@@ -630,8 +629,7 @@ bool CStyleCast::rewriteArithmeticCast(CStyleCastExpr const * expr, char const *
}
}
if (third.isValid()) {
- if (rewritten_.find(third) == rewritten_.end()) {
- rewritten_.insert(third);
+ if (rewritten_.insert(third).second) {
if (!insertTextBefore(third, "(")) {
//TODO: roll back
if (isDebugMode()) {