DeclarationFragments is a vector of tagged important parts of a symbol's declaration. More...
#include "clang/ExtractAPI/DeclarationFragments.h"
DeclarationFragments is a vector of tagged important parts of a symbol's declaration.
The fragments sequence can be joined to form spans of declaration text, with attached information useful for purposes like syntax-highlighting etc. For example:
const -> keyword "const"
pi; -> identifier "pi"
const internal::VariadicAllOfMatcher< Type > type
Matches Types in the clang AST.
Definition at line 48 of file DeclarationFragments.h.
◆ ConstFragmentIterator ◆ FragmentIterator ◆ FragmentKindThe kind of a fragment.
Enumerator NoneUnknown fragment kind.
Keyword Attribute NumberLiteral StringLiteral Identifier TypeIdentifierIdentifier that refers to a type in the context.
GenericParameterParameter that's used as generics in the context.
For example template parameters.
ExternalParamExternal parameters in Objective-C methods.
For example, forKey
in
- (void) setValue:(
Value)value forKey(Key)key
clang::Value Definition: Value.h:94 InternalParamInternal/local parameters in Objective-C methods.
For example, key
in
- (void) setValue:(
Value)value forKey(Key)key
TextDefinition at line 53 of file DeclarationFragments.h.
◆ DeclarationFragments() clang::extractapi::DeclarationFragments::DeclarationFragments ( ) default ◆ append() [1/2]Append another DeclarationFragments to the end.
Definition at line 130 of file DeclarationFragments.h.
References end(), insert(), and clang::Other.
Referenced by getExceptionSpecificationString(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForClassTemplatePartialSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForClassTemplateSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForConcept(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForConversionFunction(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForCXXClass(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForCXXMethod(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForEnum(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForEnumConstant(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForField(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForFunction(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForFunctionTemplate(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForFunctionTemplateSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForMacro(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForNamespace(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForObjCCategory(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForObjCInterface(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForObjCMethod(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForObjCProperty(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForObjCProtocol(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForOverloadedOperator(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForRecordDecl(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForRedeclarableTemplate(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForSpecialCXXMethod(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForTemplateArguments(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForTemplateParameters(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForTypedef(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVar(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVarTemplate(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVarTemplatePartialSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVarTemplateSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFunctionSignature(), getStructureTypeFragment(), clang::extractapi::DeclarationFragmentsBuilder::getSubHeading(), clang::extractapi::DeclarationFragmentsBuilder::getSubHeadingForMacro(), and clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitTypedefNameDecl().
◆ append() [2/2] DeclarationFragments & clang::extractapi::DeclarationFragments::append ( StringRef Spelling, FragmentKind Kind, StringRef PreciseIdentifier =""
, const Decl * Declaration = nullptr
) inline ◆ appendSemicolon()
Append a text Fragment of a semicolon character.
Definition at line 89 of file DeclarationFragments.cpp.
Referenced by clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForClassTemplatePartialSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForClassTemplateSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForConcept(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForConversionFunction(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForCXXClass(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForCXXMethod(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForEnum(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForField(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForFunction(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForNamespace(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForObjCMethod(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForObjCProperty(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForOverloadedOperator(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForRecordDecl(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForSpecialCXXMethod(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForTypedef(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVar(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVarTemplate(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVarTemplatePartialSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVarTemplateSpecialization(), and clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitTypedefNameDecl().
◆ appendSpace()Append a text Fragment of a space character.
Definition at line 85 of file DeclarationFragments.cpp.
Referenced by clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForClassTemplatePartialSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForClassTemplateSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForConcept(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForConversionFunction(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForCXXClass(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForCXXMethod(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForEnum(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForField(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForFunction(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForFunctionTemplate(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForFunctionTemplateSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForMacro(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForNamespace(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForObjCCategory(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForObjCInterface(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForObjCMethod(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForObjCProperty(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForObjCProtocol(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForOverloadedOperator(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForRecordDecl(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForRedeclarableTemplate(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForSpecialCXXMethod(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForTemplateArguments(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForTemplateParameters(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForTypedef(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVar(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVarTemplate(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVarTemplatePartialSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVarTemplateSpecialization(), and clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitTypedefNameDecl().
◆ begin() ◆ cbegin() ◆ cend() ◆ end() ◆ getExceptionSpecificationString()Definition at line 152 of file DeclarationFragments.cpp.
References append(), clang::EST_BasicNoexcept, clang::EST_DependentNoexcept, clang::EST_Dynamic, clang::EST_DynamicNone, clang::EST_NoexceptFalse, clang::EST_NoexceptTrue, clang::EST_None, Keyword, and Text.
Referenced by clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForCXXMethod(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForFunction(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForOverloadedOperator(), and clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForSpecialCXXMethod().
◆ getFragmentKindString()Get the string description of a FragmentKind Kind
.
Definition at line 104 of file DeclarationFragments.cpp.
References Attribute, ExternalParam, GenericParameter, Identifier, InternalParam, Keyword, None, NumberLiteral, StringLiteral, Text, and TypeIdentifier.
◆ getFragments() const std::vector< Fragment > & clang::extractapi::DeclarationFragments::getFragments ( ) const inline ◆ getStructureTypeFragment() ◆ insert() ◆ parseFragmentKindFromString()Get the corresponding FragmentKind from string S
.
Definition at line 135 of file DeclarationFragments.cpp.
References Attribute, ExternalParam, GenericParameter, Identifier, InternalParam, Keyword, None, NumberLiteral, StringLiteral, Text, and TypeIdentifier.
◆ pop_back() ◆ prepend() ◆ removeTrailingSemicolon() ◆ replace()The documentation for this class was generated from the following files:
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4