Lines Matching refs:ParsedAttr

1 //======- ParsedAttr.cpp --------------------------------------------------===//
9 // This file defines the ParsedAttr class implementation
13 #include "clang/Sema/ParsedAttr.h"
36 size_t ParsedAttr::allocated_size() const {
58 assert(size >= sizeof(ParsedAttr));
60 return ((size - sizeof(ParsedAttr)) / sizeof(void *));
67 ParsedAttr *attr = FreeLists[index].back();
76 void AttributeFactory::deallocate(ParsedAttr *Attr) {
94 for (ParsedAttr *AL : cur.Attrs)
105 llvm::for_each(List.AttrList, [&Pool](ParsedAttr *A) { Pool.remove(A); });
116 // If we have a ParsedAttrInfo for this ParsedAttr then return that.
148 unsigned ParsedAttr::getMinArgs() const { return getInfo().NumArgs; }
150 unsigned ParsedAttr::getMaxArgs() const {
154 unsigned ParsedAttr::getNumArgMembers() const {
158 bool ParsedAttr::hasCustomParsing() const {
162 bool ParsedAttr::diagnoseAppertainsTo(Sema &S, const Decl *D) const {
166 bool ParsedAttr::diagnoseAppertainsTo(Sema &S, const Stmt *St) const {
170 bool ParsedAttr::diagnoseMutualExclusion(Sema &S, const Decl *D) const {
174 bool ParsedAttr::appliesToDecl(const Decl *D,
179 void ParsedAttr::getMatchRules(
186 bool ParsedAttr::diagnoseLangOpts(Sema &S) const {
193 bool ParsedAttr::isTargetSpecificAttr() const {
197 bool ParsedAttr::isTypeAttr() const { return getInfo().IsType; }
199 bool ParsedAttr::isStmtAttr() const { return getInfo().IsStmt; }
201 bool ParsedAttr::existsInTarget(const TargetInfo &Target) const {
216 bool ParsedAttr::isKnownToGCC() const { return getInfo().IsKnownToGCC; }
218 bool ParsedAttr::isSupportedByPragmaAttribute() const {
222 bool ParsedAttr::slidesFromDeclToDeclSpecLegacyBehavior() const {
260 bool ParsedAttr::acceptsExprPack() const { return getInfo().AcceptsExprPack; }
262 unsigned ParsedAttr::getSemanticSpelling() const {
266 bool ParsedAttr::hasVariadicArg() const {
274 bool ParsedAttr::isParamExpr(size_t N) const {
278 void ParsedAttr::handleAttrWithDelayedArgs(Sema &S, Decl *D) const {
282 static unsigned getNumAttributeArgs(const ParsedAttr &AL) {
288 static bool checkAttributeNumArgsImpl(Sema &S, const ParsedAttr &AL,
298 bool ParsedAttr::checkExactlyNumArgs(Sema &S, unsigned Num) const {
303 bool ParsedAttr::checkAtLeastNumArgs(Sema &S, unsigned Num) const {
308 bool ParsedAttr::checkAtMostNumArgs(Sema &S, unsigned Num) const {