clang 22.0.0git
ParsedAttr.h File Reference
#include "clang/Basic/AttrSubjectMatchRules.h"
#include "clang/Basic/AttributeCommonInfo.h"
#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/ParsedAttrInfo.h"
#include "clang/Basic/SourceLocation.h"
#include "clang/Sema/Ownership.h"
#include "llvm/ADT/PointerUnion.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/VersionTuple.h"
#include <bitset>
#include <cassert>
#include <cstddef>
#include <cstring>
#include <utility>

Go to the source code of this file.

Classes

struct  clang::AvailabilityChange
 Represents information about a change in availability for an entity, which is part of the encoding of the 'availability' attribute. More...
struct  clang::detail::AvailabilityData
 Describes the trailing object for Availability attribute in ParsedAttr. More...
struct  clang::detail::TypeTagForDatatypeData
struct  clang::detail::PropertyData
class  clang::ParsedAttr
 ParsedAttr - Represents a syntactic attribute. More...
class  clang::AttributeFactory
 A factory, from which one makes pools, from which one creates individual attributes which are deallocated with the pool. More...
class  clang::AttributePool
class  clang::ParsedAttributesView
struct  clang::ParsedAttributesView::iterator
struct  clang::ParsedAttributesView::const_iterator
struct  clang::ParsedAttributeArgumentsProperties
class  clang::ParsedAttributes
 ParsedAttributes - A collection of parsed attributes. More...

Namespaces

namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
namespace  clang::detail

Typedefs

using clang::ArgsUnion = llvm::PointerUnion<Expr *, IdentifierLoc *>
 A union of the various pointer types that can be passed to an ParsedAttr as an argument.
using clang::ArgsVector = llvm::SmallVector<ArgsUnion, 12U>

Enumerations

enum  clang::detail::AvailabilitySlot { clang::detail::IntroducedSlot , clang::detail::DeprecatedSlot , clang::detail::ObsoletedSlot , clang::detail::NumAvailabilitySlots }
enum  clang::AttributeArgumentNType {
  clang::AANT_ArgumentIntOrBool , clang::AANT_ArgumentIntegerConstant , clang::AANT_ArgumentString , clang::AANT_ArgumentIdentifier ,
  clang::AANT_ArgumentConstantExpr , clang::AANT_ArgumentBuiltinFunction
}
 These constants match the enumerated choices of err_attribute_argument_n_type and err_attribute_argument_type. More...
enum  clang::AttributeDeclKind {
  clang::ExpectedFunction , clang::ExpectedUnion , clang::ExpectedVariableOrFunction , clang::ExpectedFunctionOrMethod ,
  clang::ExpectedFunctionMethodOrBlock , clang::ExpectedFunctionMethodOrParameter , clang::ExpectedVariable , clang::ExpectedVariableOrField ,
  clang::ExpectedVariableFieldOrTag , clang::ExpectedTypeOrNamespace , clang::ExpectedFunctionVariableOrClass , clang::ExpectedKernelFunction ,
  clang::ExpectedFunctionWithProtoType , clang::ExpectedForLoopStatement , clang::ExpectedVirtualFunction , clang::ExpectedParameterOrImplicitObjectParameter ,
  clang::ExpectedNonMemberFunction , clang::ExpectedFunctionOrClassOrEnum , clang::ExpectedClass , clang::ExpectedTypedef
}
 These constants match the enumerated choices of warn_attribute_wrong_decl_type and err_attribute_wrong_decl_type. More...

Functions

void clang::takeAndConcatenateAttrs (ParsedAttributes &First, ParsedAttributes &&Second)
 Consumes the attributes from Second and concatenates them at the end of First.