| //===-- OptionsUtils.cpp - clang-tidy -------------------------------------===// |
| // |
| // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
| // See https://llvm.org/LICENSE.txt for license information. |
| // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
| // |
| //===----------------------------------------------------------------------===// |
| |
| #include "OptionsUtils.h" |
| |
| namespace clang { |
| namespace tidy { |
| namespace utils { |
| namespace options { |
| |
| static const char StringsDelimiter[] = ";"; |
| |
| std::vector<std::string> parseStringList(StringRef Option) { |
| SmallVector<StringRef, 4> Names; |
| Option.split(Names, StringsDelimiter); |
| std::vector<std::string> Result; |
| for (StringRef &Name : Names) { |
| Name = Name.trim(); |
| if (!Name.empty()) |
| Result.emplace_back(Name); |
| } |
| return Result; |
| } |
| |
| std::string serializeStringList(ArrayRef<std::string> Strings) { |
| return llvm::join(Strings, StringsDelimiter); |
| } |
| |
| } // namespace options |
| } // namespace utils |
| } // namespace tidy |
| } // namespace clang |