From 3d5d2e8fd8a59e354ae441755f7118f2ebb660af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Oliver=20St=C3=B6neberg?= Date: Tue, 31 May 2022 13:37:21 +0200 Subject: [PATCH] inlined `findAstNode()` calls (#4146) --- lib/astutils.cpp | 13 ------------- lib/astutils.h | 15 ++++++++++++++- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/lib/astutils.cpp b/lib/astutils.cpp index e85d30b38..03ca05daf 100644 --- a/lib/astutils.cpp +++ b/lib/astutils.cpp @@ -45,19 +45,6 @@ #include #include -const Token* findAstNode(const Token* ast, const std::function& pred) -{ - const Token* result = nullptr; - visitAstNodes(ast, [&](const Token* tok) { - if (pred(tok)) { - result = tok; - return ChildrenToVisit::done; - } - return ChildrenToVisit::op1_and_op2; - }); - return result; -} - const Token* findExpression(const nonneg int exprid, const Token* start, const Token* end, diff --git a/lib/astutils.h b/lib/astutils.h index 6e23b1f5c..6bdde92b1 100644 --- a/lib/astutils.h +++ b/lib/astutils.h @@ -79,7 +79,20 @@ void visitAstNodes(T *ast, const TFunc &visitor) } while (true); } -const Token* findAstNode(const Token* ast, const std::function& pred); +template +const Token* findAstNode(const Token* ast, const TFunc& pred) +{ + const Token* result = nullptr; + visitAstNodes(ast, [&](const Token* tok) { + if (pred(tok)) { + result = tok; + return ChildrenToVisit::done; + } + return ChildrenToVisit::op1_and_op2; + }); + return result; +} + const Token* findExpression(const nonneg int exprid, const Token* start, const Token* end,