diff options
Diffstat (limited to 'clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp')
-rw-r--r-- | clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp | 22 |
1 files changed, 4 insertions, 18 deletions
diff --git a/clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp b/clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp index ea43d352ca7..893458f49cd 100644 --- a/clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp +++ b/clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp @@ -8,6 +8,7 @@ //===----------------------------------------------------------------------===// #include "FasterStringFindCheck.h" +#include "../utils/OptionsUtils.h" #include "clang/AST/ASTContext.h" #include "clang/ASTMatchers/ASTMatchFinder.h" #include "llvm/ADT/Optional.h" @@ -21,20 +22,6 @@ namespace performance { namespace { -static const char StringLikeClassesDelimiter[] = ";"; - -std::vector<std::string> ParseClasses(StringRef Option) { - SmallVector<StringRef, 4> Classes; - Option.split(Classes, StringLikeClassesDelimiter); - std::vector<std::string> Result; - for (StringRef &Class : Classes) { - Class = Class.trim(); - if (!Class.empty()) - Result.push_back(Class); - } - return Result; -} - llvm::Optional<std::string> MakeCharacterLiteral(const StringLiteral *Literal) { std::string Result; { @@ -64,14 +51,13 @@ AST_MATCHER_FUNCTION(ast_matchers::internal::Matcher<Expr>, FasterStringFindCheck::FasterStringFindCheck(StringRef Name, ClangTidyContext *Context) : ClangTidyCheck(Name, Context), - StringLikeClasses( - ParseClasses(Options.get("StringLikeClasses", "std::basic_string"))) { + StringLikeClasses(utils::options::parseStringList( + Options.get("StringLikeClasses", "std::basic_string"))) { } void FasterStringFindCheck::storeOptions(ClangTidyOptions::OptionMap &Opts) { Options.store(Opts, "StringLikeClasses", - llvm::join(StringLikeClasses.begin(), StringLikeClasses.end(), - StringLikeClassesDelimiter)); + utils::options::serializeStringList(StringLikeClasses)); } void FasterStringFindCheck::registerMatchers(MatchFinder *Finder) { |