class ObjCPropertyImplDecl
Declaration
class ObjCPropertyImplDecl : public Decl { /* full declaration omitted */ };
Description
ObjCPropertyImplDecl - Represents implementation declaration of a property in a class or category implementation block. For example: @ synthesize prop1 = ivar1;
Declared at: clang/include/clang/AST/DeclObjC.h:2753
Inherits from: Decl
Member Variables
- private clang::SourceLocation AtLoc
- private clang::SourceLocation IvarLoc
- private clang::ObjCPropertyDecl* PropertyDecl
- Property declaration being implemented
- private clang::ObjCIvarDecl* PropertyIvarDecl
- Null for @ dynamic. Required for @ synthesize.
- private clang::ObjCMethodDecl* GetterMethodDecl = nullptr
- The getter's definition, which has an empty body if synthesized.
- private clang::ObjCMethodDecl* SetterMethodDecl = nullptr
- The getter's definition, which has an empty body if synthesized.
- private clang::Expr* GetterCXXConstructor = nullptr
- Null for @ dynamic. Non-null if property must be copy-constructed in getter.
- private clang::Expr* SetterCXXAssignment = nullptr
- Null for @ dynamic. Non-null if property has assignment operator to call in Setter synthesis.
Inherited from Decl:
- protected NextInContextAndBits
- protected Access
- protected FromASTFile
- protected IdentifierNamespace
- protected CacheValidAndLinkage
Method Overview
- public static clang::ObjCPropertyImplDecl * Create(clang::ASTContext & C, clang::DeclContext * DC, clang::SourceLocation atLoc, clang::SourceLocation L, clang::ObjCPropertyDecl * property, clang::ObjCPropertyImplDecl::Kind PK, clang::ObjCIvarDecl * ivarDecl, clang::SourceLocation ivarLoc)
- public static clang::ObjCPropertyImplDecl * CreateDeserialized(clang::ASTContext & C, unsigned int ID)
- private ObjCPropertyImplDecl(clang::DeclContext * DC, clang::SourceLocation atLoc, clang::SourceLocation L, clang::ObjCPropertyDecl * property, clang::ObjCPropertyImplDecl::Kind PK, clang::ObjCIvarDecl * ivarDecl, clang::SourceLocation ivarLoc)
- public static bool classof(const clang::Decl * D)
- public static bool classofKind(Decl::Kind K)
- public clang::SourceLocation getBeginLoc() const
- public clang::Expr * getGetterCXXConstructor() const
- public clang::ObjCMethodDecl * getGetterMethodDecl() const
- public clang::ObjCPropertyDecl * getPropertyDecl() const
- public clang::ObjCPropertyImplDecl::Kind getPropertyImplementation() const
- public clang::ObjCIvarDecl * getPropertyIvarDecl() const
- public clang::SourceLocation getPropertyIvarDeclLoc() const
- public clang::Expr * getSetterCXXAssignment() const
- public clang::ObjCMethodDecl * getSetterMethodDecl() const
- public clang::SourceRange getSourceRange() const
- public bool isIvarNameSpecified() const
- public void setAtLoc(clang::SourceLocation Loc)
- public void setGetterCXXConstructor(clang::Expr * getterCXXConstructor)
- public void setGetterMethodDecl(clang::ObjCMethodDecl * MD)
- public void setPropertyDecl(clang::ObjCPropertyDecl * Prop)
- public void setPropertyIvarDecl(clang::ObjCIvarDecl * Ivar, clang::SourceLocation IvarLoc)
- public void setSetterCXXAssignment(clang::Expr * setterCXXAssignment)
- public void setSetterMethodDecl(clang::ObjCMethodDecl * MD)
Inherited from Decl:
- public EnableStatistics
- public PrintStats
- public add
- public addAttr
- public attr_begin
- public attr_end
- public attrs
- public canBeWeakImported
- public castFromDeclContext
- public castToDeclContext
- public classofKind
- public dropAttr
- public dropAttrs
- public dump
- public dump
- public dumpColor
- public getASTContext
- protected getASTMutationListener
- public getAccess
- public getAccessUnsafe
- public getAsFunction
- public getAsFunction
- public getAttr
- public getAttrs
- public getAttrs
- public getAvailability
- public getBeginLoc
- public getBody
- public getBodyRBrace
- protected getCachedLinkage
- public getCanonicalDecl
- public getCanonicalDecl
- public getDeclContext
- public getDeclContext
- public getDeclKindName
- public getDefiningAttr
- public getDescribedTemplate
- public getDescribedTemplateParams
- public getEndLoc
- public getExternalSourceSymbolAttr
- public getFriendObjectKind
- public getFunctionType
- public getGlobalID
- public getID
- public getIdentifierNamespace
- public getIdentifierNamespaceForKind
- public getImportedOwningModule
- public getKind
- public getLangOpts
- public getLexicalDeclContext
- public getLexicalDeclContext
- public getLocalOwningModule
- public getLocation
- public getMaxAlignment
- public getModuleOwnershipKind
- public getMostRecentDecl
- public getMostRecentDecl
- protected getMostRecentDeclImpl
- public getNextDeclInContext
- public getNextDeclInContext
- protected getNextRedeclarationImpl
- public getNonClosureContext
- public getNonClosureContext
- public getOwningModule
- public getOwningModuleForLinkage
- public getOwningModuleID
- public getParentFunctionOrMethod
- public getParentFunctionOrMethod
- public getPreviousDecl
- public getPreviousDecl
- protected getPreviousDeclImpl
- public getSourceRange
- public getTemplateDepth
- public getTranslationUnitDecl
- public getTranslationUnitDecl
- public getVersionIntroduced
- public hasAttr
- public hasAttrs
- public hasBody
- protected hasCachedLinkage
- public hasDefiningAttr
- protected hasLocalOwningModuleStorage
- public hasOwningModule
- public hasTagIdentifierNamespace
- public isCanonicalDecl
- public isDefinedOutsideFunctionOrMethod
- public isDeprecated
- public isDiscardedInGlobalModuleFragment
- public isFirstDecl
- public isFromASTFile
- public isFunctionOrFunctionTemplate
- public isImplicit
- public isInAnonymousNamespace
- public isInExportDeclContext
- public isInIdentifierNamespace
- public isInLocalScopeForInstantiation
- public isInStdNamespace
- public isInvalidDecl
- public isInvisibleOutsideTheOwningModule
- public isLocalExternDecl
- public isModulePrivate
- public isOutOfLine
- public isParameterPack
- public isReachable
- public isReferenced
- public isTagIdentifierNamespace
- public isTemplateDecl
- public isTemplateParameter
- public isTemplateParameterPack
- public isTemplated
- public isThisDeclarationReferenced
- public isTopLevelDeclInObjCContainer
- public isUnavailable
- public isUnconditionallyVisible
- public isUsed
- public isWeakImported
- public markUsed
- public print
- public print
- public printGroup
- public redecls
- public redecls_begin
- public redecls_end
- public setAccess
- public setAttrs
- protected setCachedLinkage
- public setDeclContext
- public setFromASTFile
- public setImplicit
- public setInvalidDecl
- public setIsUsed
- public setLexicalDeclContext
- public setLocalExternDecl
- public setLocalOwningModule
- public setLocation
- public setModuleOwnershipKind
- protected setModulePrivate
- public setNonMemberOperator
- public setObjectOfFriendDecl
- public setOwningModuleID
- public setReferenced
- public setTopLevelDeclInObjCContainer
- public setVisibleDespiteOwningModule
- public specific_attr_begin
- public specific_attr_end
- public specific_attrs
- protected updateOutOfDate
Methods
¶static clang::ObjCPropertyImplDecl* Create(
clang::ASTContext& C,
clang::DeclContext* DC,
clang::SourceLocation atLoc,
clang::SourceLocation L,
clang::ObjCPropertyDecl* property,
clang::ObjCPropertyImplDecl::Kind PK,
clang::ObjCIvarDecl* ivarDecl,
clang::SourceLocation ivarLoc)
static clang::ObjCPropertyImplDecl* Create(
clang::ASTContext& C,
clang::DeclContext* DC,
clang::SourceLocation atLoc,
clang::SourceLocation L,
clang::ObjCPropertyDecl* property,
clang::ObjCPropertyImplDecl::Kind PK,
clang::ObjCIvarDecl* ivarDecl,
clang::SourceLocation ivarLoc)
Declared at: clang/include/clang/AST/DeclObjC.h:2803
Parameters
- clang::ASTContext& C
- clang::DeclContext* DC
- clang::SourceLocation atLoc
- clang::SourceLocation L
- clang::ObjCPropertyDecl* property
- clang::ObjCPropertyImplDecl::Kind PK
- clang::ObjCIvarDecl* ivarDecl
- clang::SourceLocation ivarLoc
¶static clang::ObjCPropertyImplDecl*
CreateDeserialized(clang::ASTContext& C,
unsigned int ID)
static clang::ObjCPropertyImplDecl*
CreateDeserialized(clang::ASTContext& C,
unsigned int ID)
Declared at: clang/include/clang/AST/DeclObjC.h:2810
Parameters
- clang::ASTContext& C
- unsigned int ID
¶ObjCPropertyImplDecl(
clang::DeclContext* DC,
clang::SourceLocation atLoc,
clang::SourceLocation L,
clang::ObjCPropertyDecl* property,
clang::ObjCPropertyImplDecl::Kind PK,
clang::ObjCIvarDecl* ivarDecl,
clang::SourceLocation ivarLoc)
ObjCPropertyImplDecl(
clang::DeclContext* DC,
clang::SourceLocation atLoc,
clang::SourceLocation L,
clang::ObjCPropertyDecl* property,
clang::ObjCPropertyImplDecl::Kind PK,
clang::ObjCIvarDecl* ivarDecl,
clang::SourceLocation ivarLoc)
Declared at: clang/include/clang/AST/DeclObjC.h:2790
Parameters
- clang::DeclContext* DC
- clang::SourceLocation atLoc
- clang::SourceLocation L
- clang::ObjCPropertyDecl* property
- clang::ObjCPropertyImplDecl::Kind PK
- clang::ObjCIvarDecl* ivarDecl
- clang::SourceLocation ivarLoc
¶static bool classof(const clang::Decl* D)
static bool classof(const clang::Decl* D)
Declared at: clang/include/clang/AST/DeclObjC.h:2870
Parameters
- const clang::Decl* D
¶static bool classofKind(Decl::Kind K)
static bool classofKind(Decl::Kind K)
Declared at: clang/include/clang/AST/DeclObjC.h:2871
Parameters
- Decl::Kind K
¶clang::SourceLocation getBeginLoc() const
clang::SourceLocation getBeginLoc() const
Declared at: clang/include/clang/AST/DeclObjC.h:2814
¶clang::Expr* getGetterCXXConstructor() const
clang::Expr* getGetterCXXConstructor() const
Declared at: clang/include/clang/AST/DeclObjC.h:2854
¶clang::ObjCMethodDecl* getGetterMethodDecl() const
clang::ObjCMethodDecl* getGetterMethodDecl() const
Declared at: clang/include/clang/AST/DeclObjC.h:2848
¶clang::ObjCPropertyDecl* getPropertyDecl() const
clang::ObjCPropertyDecl* getPropertyDecl() const
Declared at: clang/include/clang/AST/DeclObjC.h:2817
¶clang::ObjCPropertyImplDecl::Kind
getPropertyImplementation() const
clang::ObjCPropertyImplDecl::Kind
getPropertyImplementation() const
Declared at: clang/include/clang/AST/DeclObjC.h:2822
¶clang::ObjCIvarDecl* getPropertyIvarDecl() const
clang::ObjCIvarDecl* getPropertyIvarDecl() const
Declared at: clang/include/clang/AST/DeclObjC.h:2826
¶clang::SourceLocation getPropertyIvarDeclLoc()
const
clang::SourceLocation getPropertyIvarDeclLoc()
const
Declared at: clang/include/clang/AST/DeclObjC.h:2829
¶clang::Expr* getSetterCXXAssignment() const
clang::Expr* getSetterCXXAssignment() const
Declared at: clang/include/clang/AST/DeclObjC.h:2862
¶clang::ObjCMethodDecl* getSetterMethodDecl() const
clang::ObjCMethodDecl* getSetterMethodDecl() const
Declared at: clang/include/clang/AST/DeclObjC.h:2851
¶clang::SourceRange getSourceRange() const
clang::SourceRange getSourceRange() const
Description
Source range that this declaration covers.
Declared at: clang/include/clang/AST/DeclObjC.h:2812
¶bool isIvarNameSpecified() const
bool isIvarNameSpecified() const
Description
For @ synthesize, returns true if an ivar name was explicitly specified.
Declared at: clang/include/clang/AST/DeclObjC.h:2844
¶void setAtLoc(clang::SourceLocation Loc)
void setAtLoc(clang::SourceLocation Loc)
Declared at: clang/include/clang/AST/DeclObjC.h:2815
Parameters
¶void setGetterCXXConstructor(
clang::Expr* getterCXXConstructor)
void setGetterCXXConstructor(
clang::Expr* getterCXXConstructor)
Declared at: clang/include/clang/AST/DeclObjC.h:2858
Parameters
- clang::Expr* getterCXXConstructor
¶void setGetterMethodDecl(
clang::ObjCMethodDecl* MD)
void setGetterMethodDecl(
clang::ObjCMethodDecl* MD)
Declared at: clang/include/clang/AST/DeclObjC.h:2849
Parameters
¶void setPropertyDecl(
clang::ObjCPropertyDecl* Prop)
void setPropertyDecl(
clang::ObjCPropertyDecl* Prop)
Declared at: clang/include/clang/AST/DeclObjC.h:2820
Parameters
- clang::ObjCPropertyDecl* Prop
¶void setPropertyIvarDecl(
clang::ObjCIvarDecl* Ivar,
clang::SourceLocation IvarLoc)
void setPropertyIvarDecl(
clang::ObjCIvarDecl* Ivar,
clang::SourceLocation IvarLoc)
Declared at: clang/include/clang/AST/DeclObjC.h:2831
Parameters
- clang::ObjCIvarDecl* Ivar
- clang::SourceLocation IvarLoc
¶void setSetterCXXAssignment(
clang::Expr* setterCXXAssignment)
void setSetterCXXAssignment(
clang::Expr* setterCXXAssignment)
Declared at: clang/include/clang/AST/DeclObjC.h:2866
Parameters
- clang::Expr* setterCXXAssignment
¶void setSetterMethodDecl(
clang::ObjCMethodDecl* MD)
void setSetterMethodDecl(
clang::ObjCMethodDecl* MD)
Declared at: clang/include/clang/AST/DeclObjC.h:2852