clang 20.0.0git
Public Member Functions | List of all members
clang::ParsingDeclSpec Class Reference

A class for parsing a DeclSpec. More...

#include "clang/Parse/RAIIObjectsForParser.h"

Inheritance diagram for clang::ParsingDeclSpec:
Inheritance graph
[legend]

Public Member Functions

 ParsingDeclSpec (Parser &P)
 
 ParsingDeclSpec (Parser &P, ParsingDeclRAIIObject *RAII)
 
const sema::DelayedDiagnosticPoolgetDelayedDiagnosticPool () const
 
void complete (Decl *D)
 
void abort ()
 
- Public Member Functions inherited from clang::DeclSpec
 DeclSpec (AttributeFactory &attrFactory)
 
SCS getStorageClassSpec () const
 
TSCS getThreadStorageClassSpec () const
 
bool isExternInLinkageSpec () const
 
void setExternInLinkageSpec (bool Value)
 
SourceLocation getStorageClassSpecLoc () const
 
SourceLocation getThreadStorageClassSpecLoc () const
 
void ClearStorageClassSpecs ()
 
void ClearTypeSpecType ()
 
TypeSpecifierWidth getTypeSpecWidth () const
 
TSC getTypeSpecComplex () const
 
TypeSpecifierSign getTypeSpecSign () const
 
TST getTypeSpecType () const
 
bool isTypeAltiVecVector () const
 
bool isTypeAltiVecPixel () const
 
bool isTypeAltiVecBool () const
 
bool isTypeSpecOwned () const
 
bool isTypeRep () const
 
bool isTypeSpecPipe () const
 
bool isTypeSpecSat () const
 
bool isConstrainedAuto () const
 
ParsedType getRepAsType () const
 
DeclgetRepAsDecl () const
 
ExprgetRepAsExpr () const
 
ExprgetPackIndexingExpr () const
 
TemplateIdAnnotationgetRepAsTemplateId () const
 
CXXScopeSpecgetTypeSpecScope ()
 
const CXXScopeSpecgetTypeSpecScope () const
 
SourceRange getSourceRange () const LLVM_READONLY
 
SourceLocation getBeginLoc () const LLVM_READONLY
 
SourceLocation getEndLoc () const LLVM_READONLY
 
SourceLocation getTypeSpecWidthLoc () const
 
SourceRange getTypeSpecWidthRange () const
 
SourceLocation getTypeSpecComplexLoc () const
 
SourceLocation getTypeSpecSignLoc () const
 
SourceLocation getTypeSpecTypeLoc () const
 
SourceLocation getAltiVecLoc () const
 
SourceLocation getTypeSpecSatLoc () const
 
SourceLocation getTypeSpecTypeNameLoc () const
 
SourceRange getTypeofParensRange () const
 
void setTypeArgumentRange (SourceRange range)
 
bool hasAutoTypeSpec () const
 
bool hasTagDefinition () const
 
unsigned getTypeQualifiers () const
 getTypeQualifiers - Return a set of TQs.
 
SourceLocation getConstSpecLoc () const
 
SourceLocation getRestrictSpecLoc () const
 
SourceLocation getVolatileSpecLoc () const
 
SourceLocation getAtomicSpecLoc () const
 
SourceLocation getUnalignedSpecLoc () const
 
SourceLocation getPipeLoc () const
 
SourceLocation getEllipsisLoc () const
 
void ClearTypeQualifiers ()
 Clear out all of the type qualifiers.
 
bool isInlineSpecified () const
 
SourceLocation getInlineSpecLoc () const
 
ExplicitSpecifier getExplicitSpecifier () const
 
bool isVirtualSpecified () const
 
SourceLocation getVirtualSpecLoc () const
 
bool hasExplicitSpecifier () const
 
SourceLocation getExplicitSpecLoc () const
 
SourceRange getExplicitSpecRange () const
 
bool isNoreturnSpecified () const
 
SourceLocation getNoreturnSpecLoc () const
 
void ClearFunctionSpecs ()
 
void forEachCVRUQualifier (llvm::function_ref< void(TQ, StringRef, SourceLocation)> Handle)
 This method calls the passed in handler on each CVRU qual being set.
 
void forEachQualifier (llvm::function_ref< void(TQ, StringRef, SourceLocation)> Handle)
 This method calls the passed in handler on each qual being set.
 
bool hasTypeSpecifier () const
 Return true if any type-specifier has been found.
 
unsigned getParsedSpecifiers () const
 Return a bitmask of which flavors of specifiers this DeclSpec includes.
 
bool isEmpty () const
 isEmpty - Return true if this declaration specifier is completely empty: no tokens were parsed in the production of it.
 
void SetRangeStart (SourceLocation Loc)
 
void SetRangeEnd (SourceLocation Loc)
 
bool SetStorageClassSpec (Sema &S, SCS SC, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID, const PrintingPolicy &Policy)
 These methods set the specified attribute of the DeclSpec and return false if there was no error.
 
bool SetStorageClassSpecThread (TSCS TSC, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID)
 
bool SetTypeSpecWidth (TypeSpecifierWidth W, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID, const PrintingPolicy &Policy)
 These methods set the specified attribute of the DeclSpec, but return true and ignore the request if invalid (e.g.
 
bool SetTypeSpecComplex (TSC C, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID)
 
bool SetTypeSpecSign (TypeSpecifierSign S, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID)
 
bool SetTypeSpecType (TST T, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID, const PrintingPolicy &Policy)
 
bool SetTypeSpecType (TST T, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID, ParsedType Rep, const PrintingPolicy &Policy)
 
bool SetTypeSpecType (TST T, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID, TypeResult Rep, const PrintingPolicy &Policy)
 
bool SetTypeSpecType (TST T, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID, Decl *Rep, bool Owned, const PrintingPolicy &Policy)
 
bool SetTypeSpecType (TST T, SourceLocation TagKwLoc, SourceLocation TagNameLoc, const char *&PrevSpec, unsigned &DiagID, ParsedType Rep, const PrintingPolicy &Policy)
 
bool SetTypeSpecType (TST T, SourceLocation TagKwLoc, SourceLocation TagNameLoc, const char *&PrevSpec, unsigned &DiagID, Decl *Rep, bool Owned, const PrintingPolicy &Policy)
 
bool SetTypeSpecType (TST T, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID, TemplateIdAnnotation *Rep, const PrintingPolicy &Policy)
 
bool SetTypeSpecType (TST T, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID, Expr *Rep, const PrintingPolicy &policy)
 
bool SetTypeAltiVecVector (bool isAltiVecVector, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID, const PrintingPolicy &Policy)
 
bool SetTypeAltiVecPixel (bool isAltiVecPixel, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID, const PrintingPolicy &Policy)
 
bool SetTypeAltiVecBool (bool isAltiVecBool, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID, const PrintingPolicy &Policy)
 
bool SetTypePipe (bool isPipe, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID, const PrintingPolicy &Policy)
 
bool SetBitIntType (SourceLocation KWLoc, Expr *BitWidth, const char *&PrevSpec, unsigned &DiagID, const PrintingPolicy &Policy)
 
bool SetTypeSpecSat (SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID)
 
void SetPackIndexingExpr (SourceLocation EllipsisLoc, Expr *Pack)
 
bool SetTypeSpecError ()
 
void UpdateDeclRep (Decl *Rep)
 
void UpdateTypeRep (ParsedType Rep)
 
void UpdateExprRep (Expr *Rep)
 
bool SetTypeQual (TQ T, SourceLocation Loc)
 
bool SetTypeQual (TQ T, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID, const LangOptions &Lang)
 
bool setFunctionSpecInline (SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID)
 
bool setFunctionSpecForceInline (SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID)
 
bool setFunctionSpecVirtual (SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID)
 
bool setFunctionSpecExplicit (SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID, ExplicitSpecifier ExplicitSpec, SourceLocation CloseParenLoc)
 
bool setFunctionSpecNoreturn (SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID)
 
bool SetFriendSpec (SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID)
 
bool setModulePrivateSpec (SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID)
 
bool SetConstexprSpec (ConstexprSpecKind ConstexprKind, SourceLocation Loc, const char *&PrevSpec, unsigned &DiagID)
 
FriendSpecified isFriendSpecified () const
 
bool isFriendSpecifiedFirst () const
 
SourceLocation getFriendSpecLoc () const