clang 22.0.0git
ParseObjc.cpp File Reference
#include "clang/AST/ASTContext.h"
#include "clang/AST/ExprObjC.h"
#include "clang/AST/ODRDiagsEmitter.h"
#include "clang/AST/PrettyDeclStackTrace.h"
#include "clang/Basic/CharInfo.h"
#include "clang/Basic/DiagnosticParse.h"
#include "clang/Basic/TargetInfo.h"
#include "clang/Parse/Parser.h"
#include "clang/Parse/RAIIObjectsForParser.h"
#include "clang/Sema/DeclSpec.h"
#include "clang/Sema/Scope.h"
#include "clang/Sema/SemaCodeCompletion.h"
#include "clang/Sema/SemaObjC.h"
#include "llvm/ADT/STLForwardCompat.h"
#include "llvm/ADT/SmallVector.h"

Go to the source code of this file.

Classes

class  clang::Parser::ObjCTypeParamListScope

Functions

static void addContextSensitiveTypeNullability (Parser &P, Declarator &D, NullabilityKind nullability, SourceLocation nullabilityLoc, bool &addedToDeclSpec)
 Add an attribute for a context-sensitive type nullability to the given declarator.
static bool isTopLevelObjCKeyword (tok::ObjCKeywordKind DirectiveKind)
static void diagnoseRedundantPropertyNullability (Parser &P, ObjCDeclSpec &DS, NullabilityKind nullability, SourceLocation nullabilityLoc)
 Diagnose redundant or conflicting nullability information.
static void takeDeclAttributes (ParsedAttributesView &attrs, ParsedAttributesView &from)
 Take all the decl attributes out of the given list and add them to the given attribute set.
static void takeDeclAttributes (ParsedAttributes &attrs, Declarator &D)
 takeDeclAttributes - Take all the decl attributes from the given declarator and add them to the given list.

Function Documentation

◆ addContextSensitiveTypeNullability()

void addContextSensitiveTypeNullability ( Parser & P,
Declarator & D,
NullabilityKind nullability,
SourceLocation nullabilityLoc,
bool & addedToDeclSpec )
static

◆ diagnoseRedundantPropertyNullability()

void diagnoseRedundantPropertyNullability ( Parser & P,
ObjCDeclSpec & DS,
NullabilityKind nullability,
SourceLocation nullabilityLoc )
static

Diagnose redundant or conflicting nullability information.

Definition at line 772 of file ParseObjc.cpp.

References clang::Parser::Diag(), clang::ObjCDeclSpec::getNullability(), and clang::ObjCDeclSpec::getNullabilityLoc().

◆ isTopLevelObjCKeyword()

bool isTopLevelObjCKeyword ( tok::ObjCKeywordKind DirectiveKind)
static

Definition at line 548 of file ParseObjc.cpp.

◆ takeDeclAttributes() [1/2]

◆ takeDeclAttributes() [2/2]

void takeDeclAttributes ( ParsedAttributesView & attrs,
ParsedAttributesView & from )
static

Take all the decl attributes out of the given list and add them to the given attribute set.

Definition at line 1068 of file ParseObjc.cpp.

References clang::ParsedAttributesView::addAtEnd(), and clang::ParsedAttributesView::remove().

Referenced by takeDeclAttributes().