20 #ifndef LLVM_CLANG_TOOLING_REFACTOR_STENCIL_H_ 21 #define LLVM_CLANG_TOOLING_REFACTOR_STENCIL_H_ 27 #include "llvm/ADT/StringRef.h" 28 #include "llvm/Support/Error.h" 48 std::string *Result)
const = 0;
71 explicit StencilPart(std::shared_ptr<StencilPartInterface> Impl)
72 : Impl(
std::move(Impl)) {}
76 std::string *Result)
const {
77 return Impl->eval(Match, Result);
81 if (Impl == Other.Impl)
83 if (Impl ==
nullptr || Other.Impl ==
nullptr)
85 return Impl->isEqual(*Other.Impl);
89 std::shared_ptr<StencilPartInterface> Impl;
100 template <
typename... Ts>
static Stencil cat(Ts &&... Parts) {
102 S.Parts = {wrap(std::forward<Ts>(Parts))...};
107 void append(
Stencil OtherStencil);
128 std::vector<StencilPart> Parts;
132 return A.Parts == B.Parts;
173 #endif // LLVM_CLANG_TOOLING_REFACTOR_STENCIL_H_ Defines the clang::ASTContext interface.
Smart pointer class that efficiently represents Objective-C method names.
Contains all information for a given match.
Dataflow Directional Tag Classes.
Defines a combinator library supporting the definition of selectors, which select source ranges based...