clang 24.0.0git
Types.h File Reference
#include "clang/Basic/Specifiers.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMapInfo.h"
#include "llvm/ADT/Hashing.h"
#include "llvm/ADT/PointerEmbeddedInt.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/raw_ostream.h"
#include <climits>
#include <optional>
#include <string>
#include <vector>

Go to the source code of this file.

Classes

class  clang::api_notes::CommonEntityInfo
 Describes API notes data for any entity. More...
class  clang::api_notes::CommonTypeInfo
 Describes API notes for types. More...
class  clang::api_notes::ContextInfo
 Describes API notes data for an Objective-C class or protocol or a C++ namespace. More...
class  clang::api_notes::BoundsSafetyInfo
class  clang::api_notes::VariableInfo
 API notes for a variable/property. More...
class  clang::api_notes::ObjCPropertyInfo
 Describes API notes data for an Objective-C property. More...
class  clang::api_notes::ParamInfo
 Describes a function or method parameter. More...
class  clang::api_notes::FunctionInfo
 API notes for a function or method. More...
class  clang::api_notes::ObjCMethodInfo
 Describes API notes data for an Objective-C method. More...
class  clang::api_notes::GlobalVariableInfo
 Describes API notes data for a global variable. More...
class  clang::api_notes::GlobalFunctionInfo
 Describes API notes data for a global function. More...
class  clang::api_notes::FieldInfo
 Describes API notes data for a C/C++ record field. More...
class  clang::api_notes::CXXMethodInfo
 Describes API notes data for a C++ method. More...
class  clang::api_notes::EnumConstantInfo
 Describes API notes data for an enumerator. More...
class  clang::api_notes::TagInfo
 Describes API notes data for a tag. More...
class  clang::api_notes::TypedefInfo
 Describes API notes data for a typedef. More...
class  clang::api_notes::ContextID
 Opaque context ID used to refer to an Objective-C class or protocol or a C++ namespace. More...
struct  clang::api_notes::Context
struct  clang::api_notes::FunctionTableKey
 A key for a stored global-function or C++-method API notes entry. More...
struct  clang::api_notes::APINotesFunctionSelectorKey
 Stable reader-facing identity for an API notes function selector entry. More...
struct  clang::api_notes::ObjCSelectorRef
 A temporary reference to an Objective-C selector, suitable for referencing selector data on the stack. More...
struct  llvm::DenseMapInfo< clang::api_notes::FunctionTableKey >
struct  llvm::DenseMapInfo< clang::api_notes::APINotesFunctionSelectorKey >

Namespaces

namespace  llvm
 Diagnostic wrappers for TextAPI types for error reporting.
namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
namespace  clang::api_notes

Typedefs

using clang::api_notes::IdentifierID = llvm::PointerEmbeddedInt<unsigned, 31>

Enumerations

enum class  clang::api_notes::RetainCountConventionKind {
  clang::api_notes::None , clang::api_notes::CFReturnsRetained , clang::api_notes::CFReturnsNotRetained , clang::api_notes::NSReturnsRetained ,
  clang::api_notes::NSReturnsNotRetained
}
enum class  clang::api_notes::EnumExtensibilityKind { clang::api_notes::None , clang::api_notes::Open , clang::api_notes::Closed }
 The payload for an enum_extensibility attribute. More...
enum class  clang::api_notes::SwiftNewTypeKind { clang::api_notes::None , clang::api_notes::Struct , clang::api_notes::Enum }
 The kind of a swift_wrapper/swift_newtype. More...
enum class  clang::api_notes::SwiftSafetyKind { clang::api_notes::Unspecified , clang::api_notes::Safe , clang::api_notes::Unsafe , clang::api_notes::None }
enum class  clang::api_notes::ContextKind : uint8_t { clang::api_notes::ObjCClass = 0 , clang::api_notes::ObjCProtocol = 1 , clang::api_notes::Namespace = 2 , clang::api_notes::Tag = 3 }

Functions

template<typename RangeT>
std::string clang::api_notes::formatAPINotesParameterSelector (RangeT &&Parameters)
bool clang::api_notes::operator== (const CommonEntityInfo &LHS, const CommonEntityInfo &RHS)
bool clang::api_notes::operator!= (const CommonEntityInfo &LHS, const CommonEntityInfo &RHS)
bool clang::api_notes::operator== (const CommonTypeInfo &LHS, const CommonTypeInfo &RHS)
bool clang::api_notes::operator!= (const CommonTypeInfo &LHS, const CommonTypeInfo &RHS)
bool clang::api_notes::operator== (const ContextInfo &LHS, const ContextInfo &RHS)
bool clang::api_notes::operator!= (const ContextInfo &LHS, const ContextInfo &RHS)
bool clang::api_notes::operator== (const BoundsSafetyInfo &LHS, const BoundsSafetyInfo &RHS)
bool clang::api_notes::operator!= (const BoundsSafetyInfo &LHS, const BoundsSafetyInfo &RHS)
bool clang::api_notes::operator== (const VariableInfo &LHS, const VariableInfo &RHS)
bool clang::api_notes::operator!= (const VariableInfo &LHS, const VariableInfo &RHS)
bool clang::api_notes::operator== (const ObjCPropertyInfo &LHS, const ObjCPropertyInfo &RHS)
bool clang::api_notes::operator!= (const ObjCPropertyInfo &LHS, const ObjCPropertyInfo &RHS)
bool clang::api_notes::operator== (const ParamInfo &LHS, const ParamInfo &RHS)
bool clang::api_notes::operator!= (const ParamInfo &LHS, const ParamInfo &RHS)
bool clang::api_notes::operator== (const FunctionInfo &LHS, const FunctionInfo &RHS)
bool clang::api_notes::operator!= (const FunctionInfo &LHS, const FunctionInfo &RHS)
bool clang::api_notes::operator== (const ObjCMethodInfo &LHS, const ObjCMethodInfo &RHS)
bool clang::api_notes::operator!= (const ObjCMethodInfo &LHS, const ObjCMethodInfo &RHS)
bool clang::api_notes::operator== (const CXXMethodInfo &LHS, const CXXMethodInfo &RHS)
bool clang::api_notes::operator!= (const CXXMethodInfo &LHS, const CXXMethodInfo &RHS)
bool clang::api_notes::operator== (const TagInfo &LHS, const TagInfo &RHS)
bool clang::api_notes::operator!= (const TagInfo &LHS, const TagInfo &RHS)
bool clang::api_notes::operator== (const TypedefInfo &LHS, const TypedefInfo &RHS)
bool clang::api_notes::operator!= (const TypedefInfo &LHS, const TypedefInfo &RHS)
bool clang::api_notes::operator== (const FunctionTableKey &LHS, const FunctionTableKey &RHS)
bool clang::api_notes::operator== (const APINotesFunctionSelectorKey &LHS, const APINotesFunctionSelectorKey &RHS)

Variables

static const constexpr char clang::api_notes::SOURCE_APINOTES_EXTENSION [] = "apinotes"
 The file extension used for the source representation of API notes.