18#ifndef LLVM_CLANG_EXTRACTAPI_DECLARATION_FRAGMENTS_H
19#define LLVM_CLANG_EXTRACTAPI_DECLARATION_FRAGMENTS_H
26#include "llvm/ADT/StringRef.h"
103 const std::vector<Fragment> &
getFragments()
const {
return Fragments; }
116 StringRef PreciseIdentifier =
"",
125 Fragments.insert(It, std::make_move_iterator(Other.Fragments.begin()),
126 std::make_move_iterator(Other.Fragments.end()));
127 Other.Fragments.clear();
136 StringRef PreciseIdentifier =
"",
142 Fragments.back().Spelling.append(Spelling.data(), Spelling.size());
144 Fragments.emplace_back(Spelling, Kind, PreciseIdentifier,
Declaration);
157 Fragments.insert(Fragments.end(),
158 std::make_move_iterator(Other.Fragments.begin()),
159 std::make_move_iterator(Other.Fragments.end()));
160 Other.Fragments.clear();
177 std::vector<Fragment> Fragments;
200 Parameters.emplace_back(Name, Fragments);
211 return Parameters.empty() && ReturnType.
getFragments().empty();
215 std::vector<Parameter> Parameters;
292 template <
typename FunctionT>
Defines the clang::ASTContext interface.
Defines the C++ Decl subclasses, other than those for templates (found in DeclTemplate....
Defines the clang::MacroInfo and clang::MacroDirective classes.
Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...
Decl - This represents one declaration (or definition), e.g.
An instance of this object exists for each enum constant that is defined.
Represents a member of a struct/union/class.
Represents a function declaration or definition.
Encapsulates changes to the "macros namespace" (the location where the macro name became active,...
This represents a decl that may have a name.
Represents a C++ nested name specifier, such as "\::std::vector<int>::".
ObjCCategoryDecl - Represents a category declaration.
Represents an ObjC class declaration.
ObjCMethodDecl - Represents an instance or class method declaration.
Represents one property declaration in an Objective-C interface.
Represents an Objective-C protocol declaration.
Represents a parameter to a function.
A (possibly-)qualified type.
The collection of all-type qualifiers we support.
Represents a struct/union/class.
The base class of the type hierarchy.
Base class for declarations which introduce a typedef-name.
Represents a variable declaration or definition.