|
clang
5.0.0
|
Represents one property declaration in an Objective-C interface. More...
#include "clang/AST/DeclObjC.h"
Public Member Functions | |
| SourceLocation | getAtLoc () const |
| void | setAtLoc (SourceLocation L) |
| SourceLocation | getLParenLoc () const |
| void | setLParenLoc (SourceLocation L) |
| TypeSourceInfo * | getTypeSourceInfo () const |
| QualType | getType () const |
| void | setType (QualType T, TypeSourceInfo *TSI) |
| QualType | getUsageType (QualType objectType) const |
| Retrieve the type when this property is used with a specific base object type. More... | |
| PropertyAttributeKind | getPropertyAttributes () const |
| void | setPropertyAttributes (PropertyAttributeKind PRVal) |
| void | overwritePropertyAttributes (unsigned PRVal) |
| PropertyAttributeKind | getPropertyAttributesAsWritten () const |
| void | setPropertyAttributesAsWritten (PropertyAttributeKind PRVal) |
| bool | isReadOnly () const |
| isReadOnly - Return true iff the property has a setter. More... | |
| bool | isAtomic () const |
| isAtomic - Return true if the property is atomic. More... | |
| bool | isRetaining () const |
| isRetaining - Return true if the property retains its value. More... | |
| bool | isInstanceProperty () const |
| bool | isClassProperty () const |
| ObjCPropertyQueryKind | getQueryKind () const |
| SetterKind | getSetterKind () const |
| getSetterKind - Return the method used for doing assignment in the property setter. More... | |
| Selector | getGetterName () const |
| SourceLocation | getGetterNameLoc () const |
| void | setGetterName (Selector Sel, SourceLocation Loc=SourceLocation()) |
| Selector | getSetterName () const |
| SourceLocation | getSetterNameLoc () const |
| void | setSetterName (Selector Sel, SourceLocation Loc=SourceLocation()) |
| ObjCMethodDecl * | getGetterMethodDecl () const |
| void | setGetterMethodDecl (ObjCMethodDecl *gDecl) |
| ObjCMethodDecl * | getSetterMethodDecl () const |
| void | setSetterMethodDecl (ObjCMethodDecl *gDecl) |
| void | setPropertyImplementation (PropertyControl pc) |
| PropertyControl | getPropertyImplementation () const |
| bool | isOptional () const |
| void | setPropertyIvarDecl (ObjCIvarDecl *Ivar) |
| ObjCIvarDecl * | getPropertyIvarDecl () const |
| SourceRange | getSourceRange () const override LLVM_READONLY |
| Source range that this declaration covers. More... | |
| IdentifierInfo * | getDefaultSynthIvarName (ASTContext &Ctx) const |
| Get the default name of the synthesized ivar. More... | |
Public Member Functions inherited from clang::NamedDecl | |
| IdentifierInfo * | getIdentifier () const |
| getIdentifier - Get the identifier that names this declaration, if there is one. More... | |
| StringRef | getName () const |
| getName - Get the name of identifier for this declaration as a StringRef. More... | |
| std::string | getNameAsString () const |
| getNameAsString - Get a human-readable name for the declaration, even if it is one of the special kinds of names (C++ constructor, Objective-C selector, etc). More... | |
| virtual void | printName (raw_ostream &os) const |
| DeclarationName | getDeclName () const |
| getDeclName - Get the actual, stored name of the declaration, which may be a special name. More... | |
| void | setDeclName (DeclarationName N) |
| Set the name of this declaration. More... | |
| void | printQualifiedName (raw_ostream &OS) const |
| printQualifiedName - Returns human-readable qualified name for declaration, like A::B::i, for i being member of namespace A::B. More... | |
| void | printQualifiedName (raw_ostream &OS, const PrintingPolicy &Policy) const |
| std::string | getQualifiedNameAsString () const |
| virtual void | getNameForDiagnostic (raw_ostream &OS, const PrintingPolicy &Policy, bool Qualified) const |
| getNameForDiagnostic - Appends a human-readable name for this declaration into the given stream. More... | |
| bool | declarationReplaces (NamedDecl *OldD, bool IsKnownNewer=true) const |
| Determine whether this declaration, if known to be well-formed within its context, will replace the declaration OldD if introduced into scope. More... | |
| bool | hasLinkage () const |
| Determine whether this declaration has linkage. More... | |
| bool | isCXXClassMember () const |
| Determine whether this declaration is a C++ class member. More... | |
| bool | isCXXInstanceMember () const |
| Determine whether the given declaration is an instance member of a C++ class. More... | |
| Linkage | getLinkageInternal () const |
| Determine what kind of linkage this entity has. More... | |
| Linkage | getFormalLinkage () const |
| Get the linkage from a semantic point of view. More... | |
| bool | hasExternalFormalLinkage () const |
| True if this decl has external linkage. More... | |
| bool | isExternallyVisible () const |
| Visibility | getVisibility () const |
| Determines the visibility of this entity. More... | |
| LinkageInfo | getLinkageAndVisibility () const |
| Determines the linkage and visibility of this entity. More... | |
| Optional< Visibility > | getExplicitVisibility (ExplicitVisibilityKind kind) const |
| If visibility was explicitly specified for this declaration, return that visibility. More... | |
| bool | isLinkageValid () const |
| True if the computed linkage is valid. More... | |
| bool | hasLinkageBeenComputed () const |
| True if something has required us to compute the linkage of this declaration. More... | |
| NamedDecl * | getUnderlyingDecl () |
| Looks through UsingDecls and ObjCCompatibleAliasDecls for the underlying named decl. More... | |
| const NamedDecl * | getUnderlyingDecl () const |
| NamedDecl * | getMostRecentDecl () |
| const NamedDecl * | getMostRecentDecl () const |
| ObjCStringFormatFamily | getObjCFStringFormattingFamily () const |
Public Member Functions inherited from clang::Decl | |
| SourceLocation | getLocStart () const LLVM_READONLY |
| SourceLocation | getLocEnd () const LLVM_READONLY |
| SourceLocation | getLocation () const |
| void | setLocation (SourceLocation L) |
| Kind | getKind () const |
| const char * | getDeclKindName () const |
| Decl * | getNextDeclInContext () |
| const Decl * | getNextDeclInContext () const |
| DeclContext * | getDeclContext () |
| const DeclContext * | getDeclContext () const |
| Decl * | getNonClosureContext () |
| Find the innermost non-closure ancestor of this declaration, walking up through blocks, lambdas, etc. More... | |
| const Decl * | getNonClosureContext () const |
| TranslationUnitDecl * | getTranslationUnitDecl () |
| const TranslationUnitDecl * | getTranslationUnitDecl () const |
| bool | isInAnonymousNamespace () const |
| bool | isInStdNamespace () const |
| ASTContext & | getASTContext () const LLVM_READONLY |
| void | setAccess (AccessSpecifier AS) |
| AccessSpecifier | getAccess () const |
| AccessSpecifier | getAccessUnsafe () const |
| Retrieve the access specifier for this declaration, even though it may not yet have been properly set. More... | |
| bool | hasAttrs () const |
| void | setAttrs (const AttrVec &Attrs) |
| AttrVec & | getAttrs () |
| const AttrVec & | getAttrs () const |
| void | dropAttrs () |
| void | addAttr (Attr *A) |
| attr_range | attrs () const |
| attr_iterator | attr_begin () const |
| attr_iterator | attr_end () const |
| template<typename T > | |
| void | dropAttr () |
| template<typename T > | |
| llvm::iterator_range < specific_attr_iterator< T > > | specific_attrs () const |
| template<typename T > | |
| specific_attr_iterator< T > | specific_attr_begin () const |
| template<typename T > | |
| specific_attr_iterator< T > | specific_attr_end () const |
| template<typename T > | |
| T * | getAttr () const |
| template<typename T > | |
| bool | hasAttr () const |
| unsigned | getMaxAlignment () const |
| getMaxAlignment - return the maximum alignment specified by attributes on this decl, 0 if there are none. More... | |
| void | setInvalidDecl (bool Invalid=true) |
| setInvalidDecl - Indicates the Decl had a semantic error. More... | |
| bool | isInvalidDecl () const |
| bool | isImplicit () const |
| isImplicit - Indicates whether the declaration was implicitly generated by the implementation. More... | |
| void | setImplicit (bool I=true) |
| bool | isUsed (bool CheckUsedAttr=true) const |
| Whether any (re-)declaration of the entity was used, meaning that a definition is required. More... | |
| void | setIsUsed () |
| Set whether the declaration is used, in the sense of odr-use. More... | |
| void | markUsed (ASTContext &C) |
| Mark the declaration used, in the sense of odr-use. More... | |
| bool | isReferenced () const |
| Whether any declaration of this entity was referenced. More... | |
| bool | isThisDeclarationReferenced () const |
| Whether this declaration was referenced. More... | |
| void | setReferenced (bool R=true) |
| bool | isTopLevelDeclInObjCContainer () const |
| Whether this declaration is a top-level declaration (function, global variable, etc.) that is lexically inside an objc container definition. More... | |
| void | setTopLevelDeclInObjCContainer (bool V=true) |
| ExternalSourceSymbolAttr * | getExternalSourceSymbolAttr () const |
| Looks on this and related declarations for an applicable external source symbol attribute. More... | |
| bool | isModulePrivate () const |
| Whether this declaration was marked as being private to the module in which it was defined. More... | |
| bool | isExported () const |
| Whether this declaration is exported (by virtue of being lexically within an ExportDecl or by being a NamespaceDecl). More... | |
| bool | hasDefiningAttr () const |
| Return true if this declaration has an attribute which acts as definition of the entity, such as 'alias' or 'ifunc'. More... | |
| const Attr * | getDefiningAttr () const |
| Return this declaration's defining attribute if it has one. More... | |
| AvailabilityResult | getAvailability (std::string *Message=nullptr, VersionTuple EnclosingVersion=VersionTuple()) const |
| Determine the availability of the given declaration. More... | |
| VersionTuple | getVersionIntroduced () const |
| Retrieve the version of the target platform in which this declaration was introduced. More... | |
| bool | isDeprecated (std::string *Message=nullptr) const |
| Determine whether this declaration is marked 'deprecated'. More... | |
| bool | isUnavailable (std::string *Message=nullptr) const |
| Determine whether this declaration is marked 'unavailable'. More... | |
| bool | isWeakImported () const |
| Determine whether this is a weak-imported symbol. More... | |
| bool | canBeWeakImported (bool &IsDefinition) const |
| Determines whether this symbol can be weak-imported, e.g., whether it would be well-formed to add the weak_import attribute. More... | |
| bool | isFromASTFile () const |
| Determine whether this declaration came from an AST file (such as a precompiled header or module) rather than having been parsed. More... | |
| unsigned | getGlobalID () const |
| Retrieve the global declaration ID associated with this declaration, which specifies where this Decl was loaded from. More... | |
| unsigned | getOwningModuleID () const |
| Retrieve the global ID of the module that owns this particular declaration. More... | |
| Module * | getImportedOwningModule () const |
| Get the imported owning module, if this decl is from an imported (non-local) module. More... | |
| Module * | getLocalOwningModule () const |
| Get the local owning module, if known. More... | |
| void | setLocalOwningModule (Module *M) |
| bool | hasOwningModule () const |
| Is this declaration owned by some module? More... | |
| Module * | getOwningModule () const |
| Get the module that owns this declaration. More... | |
| bool | isHidden () const |
| Determine whether this declaration might be hidden from name lookup. More... | |
| void | setVisibleDespiteOwningModule () |
| Set that this declaration is globally visible, even if it came from a module that is not visible. More... | |
| ModuleOwnershipKind | getModuleOwnershipKind () const |
| Get the kind of module ownership for this declaration. More... | |
| void | setModuleOwnershipKind (ModuleOwnershipKind MOK) |
| Set whether this declaration is hidden from name lookup. More... | |
| unsigned | getIdentifierNamespace () const |
| bool | isInIdentifierNamespace (unsigned NS) const |
| bool | hasTagIdentifierNamespace () const |
| DeclContext * | getLexicalDeclContext () |
| getLexicalDeclContext - The declaration context where this Decl was lexically declared (LexicalDC). More... | |
| const DeclContext * | getLexicalDeclContext () const |
| virtual bool | isOutOfLine () const |
| Determine whether this declaration is declared out of line (outside its semantic context). More... | |
| void | setDeclContext (DeclContext *DC) |
| setDeclContext - Set both the semantic and lexical DeclContext to DC. More... | |
| void | setLexicalDeclContext (DeclContext *DC) |
| bool | isDefinedOutsideFunctionOrMethod () const |
| isDefinedOutsideFunctionOrMethod - This predicate returns true if this scoped decl is defined outside the current function or method. More... | |
| bool | isLexicallyWithinFunctionOrMethod () const |
| Returns true if this declaration lexically is inside a function. More... | |
| const DeclContext * | getParentFunctionOrMethod () const |
| If this decl is defined inside a function/method/block it returns the corresponding DeclContext, otherwise it returns null. More... | |
| DeclContext * | getParentFunctionOrMethod () |
| virtual Decl * | getCanonicalDecl () |
| Retrieves the "canonical" declaration of the given declaration. More... | |
| const Decl * | getCanonicalDecl () const |
| bool | isCanonicalDecl () const |
| Whether this particular Decl is a canonical one. More... | |
| redecl_range | redecls () const |
| Returns an iterator range for all the redeclarations of the same decl. More... | |
| redecl_iterator | redecls_begin () const |
| redecl_iterator | redecls_end () const |
| Decl * | getPreviousDecl () |
| Retrieve the previous declaration that declares the same entity as this declaration, or NULL if there is no previous declaration. More... | |
| const Decl * | getPreviousDecl () const |
| Retrieve the most recent declaration that declares the same entity as this declaration, or NULL if there is no previous declaration. More... | |
| bool | isFirstDecl () const |
| True if this is the first declaration in its redeclaration chain. More... | |
| Decl * | getMostRecentDecl () |
| Retrieve the most recent declaration that declares the same entity as this declaration (which may be this declaration). More... | |
| const Decl * | getMostRecentDecl () const |
| Retrieve the most recent declaration that declares the same entity as this declaration (which may be this declaration). More... | |
| virtual Stmt * | getBody () const |
| getBody - If this Decl represents a declaration for a body of code, such as a function or method definition, this method returns the top-level Stmt* of that body. More... | |
| virtual bool | hasBody () const |
Returns true if this Decl represents a declaration for a body of code, such as a function or method definition. More... | |
| SourceLocation | getBodyRBrace () const |
| getBodyRBrace - Gets the right brace of the body, if a body exists. More... | |
| bool | isTemplateParameter () const |
| isTemplateParameter - Determines whether this declaration is a template parameter. More... | |
| bool | isTemplateParameterPack () const |
| isTemplateParameter - Determines whether this declaration is a template parameter pack. More... | |
| bool | isParameterPack () const |
| Whether this declaration is a parameter pack. More... | |
| bool | isTemplateDecl () const |
| returns true if this declaration is a template More... | |
| bool | isFunctionOrFunctionTemplate () const |
| Whether this declaration is a function or function template. More... | |
| TemplateDecl * | getDescribedTemplate () const |
| If this is a declaration that describes some template, this method returns that template declaration. More... | |
| FunctionDecl * | getAsFunction () LLVM_READONLY |
| Returns the function itself, or the templated function if this is a function template. More... | |
| const FunctionDecl * | getAsFunction () const |
| void | setLocalExternDecl () |
| Changes the namespace of this declaration to reflect that it's a function-local extern declaration. More... | |
| bool | isLocalExternDecl () |
| Determine whether this is a block-scope declaration with linkage. More... | |
| void | setObjectOfFriendDecl (bool PerformFriendInjection=false) |
| Changes the namespace of this declaration to reflect that it's the object of a friend declaration. More... | |
| FriendObjectKind | getFriendObjectKind () const |
| Determines whether this declaration is the object of a friend declaration and, if so, what kind. More... | |
| void | setNonMemberOperator () |
| Specifies that this declaration is a C++ overloaded non-member. More... | |
| void | print (raw_ostream &Out, unsigned Indentation=0, bool PrintInstantiation=false) const |
| void | print (raw_ostream &Out, const PrintingPolicy &Policy, unsigned Indentation=0, bool PrintInstantiation=false) const |
| void | dump () const |
| void | dumpColor () const |
| void | dump (raw_ostream &Out, bool Deserialize=false) const |
| const FunctionType * | getFunctionType (bool BlocksToo=true) const |
| Looks through the Decl's underlying type to extract a FunctionType when possible. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from clang::NamedDecl | |
| NamedDecl (Kind DK, DeclContext *DC, SourceLocation L, DeclarationName N) | |
Protected Member Functions inherited from clang::Decl | |
| void * | operator new (std::size_t Size, const ASTContext &Ctx, unsigned ID, std::size_t Extra=0) |
| Allocate memory for a deserialized declaration. More... | |
| void * | operator new (std::size_t Size, const ASTContext &Ctx, DeclContext *Parent, std::size_t Extra=0) |
| Allocate memory for a non-deserialized declaration. More... | |
| Decl (Kind DK, DeclContext *DC, SourceLocation L) | |
| Decl (Kind DK, EmptyShell Empty) | |
| virtual | ~Decl () |
| void | updateOutOfDate (IdentifierInfo &II) const |
| Update a potentially out-of-date declaration. More... | |
| Linkage | getCachedLinkage () const |
| void | setCachedLinkage (Linkage L) const |
| bool | hasCachedLinkage () const |
| void | setModulePrivate () |
| Specify that this declaration was marked as being private to the module in which it was defined. More... | |
| void | setOwningModuleID (unsigned ID) |
| Set the owning module ID. More... | |
| bool | hasLocalOwningModuleStorage () const |
| virtual Decl * | getNextRedeclarationImpl () |
| Returns the next redeclaration or itself if this is the only decl. More... | |
| virtual Decl * | getPreviousDeclImpl () |
| Implementation of getPreviousDecl(), to be overridden by any subclass that has a redeclaration chain. More... | |
| virtual Decl * | getMostRecentDeclImpl () |
| Implementation of getMostRecentDecl(), to be overridden by any subclass that has a redeclaration chain. More... | |
| ASTMutationListener * | getASTMutationListener () const |
Protected Attributes inherited from clang::Decl | |
| llvm::PointerIntPair< Decl *, 2, ModuleOwnershipKind > | NextInContextAndBits |
| The next declaration within the same lexical DeclContext. More... | |
| unsigned | Access: 2 |
| Access - Used by C++ decls for the access specifier. More... | |
| unsigned | FromASTFile: 1 |
| Whether this declaration was loaded from an AST file. More... | |
| unsigned | IdentifierNamespace: 13 |
| IdentifierNamespace - This specifies what IDNS_* namespace this lives in. More... | |
| unsigned | CacheValidAndLinkage: 3 |
| If 0, we have not computed the linkage of this declaration. More... | |
Represents one property declaration in an Objective-C interface.
For example:
Definition at line 704 of file DeclObjC.h.
| anonymous enum |
| Enumerator | |
|---|---|
| NumPropertyAttrsBits |
Number of bits fitting all the property attributes. |
Definition at line 729 of file DeclObjC.h.
Definition at line 707 of file DeclObjC.h.
| Enumerator | |
|---|---|
| None | |
| Required | |
| Optional | |
Definition at line 735 of file DeclObjC.h.
| Enumerator | |
|---|---|
| Assign | |
| Retain | |
| Copy | |
| Weak | |
Definition at line 734 of file DeclObjC.h.
Definition at line 911 of file DeclObjC.h.
References classofKind(), and clang::Decl::getKind().
Definition at line 912 of file DeclObjC.h.
Referenced by classof().
|
static |
Definition at line 2180 of file DeclObjC.cpp.
Referenced by clang::Sema::CreatePropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
|
static |
Definition at line 2192 of file DeclObjC.cpp.
|
static |
Lookup a property by name in the specified DeclContext.
Definition at line 154 of file DeclObjC.cpp.
References clang::DeclContextLookupResult::begin(), E, clang::DeclContextLookupResult::end(), clang::ObjCProtocolDecl::getDefinition(), I, clang::DeclContext::lookup(), clang::OBJC_PR_query_class, clang::OBJC_PR_query_instance, and clang::OBJC_PR_query_unknown.
Referenced by clang::CodeCompletionResult::CreateCodeCompletionString(), clang::Sema::CreatePropertyDecl(), clang::Sema::DiagnoseAvailabilityOfDecl(), clang::Sema::DiagnoseUseOfDecl(), clang::ObjCMethodDecl::findPropertyDecl(), clang::ObjCContainerDecl::FindPropertyDeclaration(), clang::ObjCInterfaceDecl::FindPropertyVisibleInPrimaryClass(), clang::Sema::HandleExprPropertyRefExpr(), and clang::sema::FunctionScopeInfo::markSafeWeakUse().
|
inline |
Definition at line 780 of file DeclObjC.h.
Referenced by checkAllProps(), clang::ASTDeclWriter::VisitObjCPropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
| IdentifierInfo * ObjCPropertyDecl::getDefaultSynthIvarName | ( | ASTContext & | Ctx | ) | const |
Get the default name of the synthesized ivar.
Definition at line 202 of file DeclObjC.cpp.
References clang::IdentifierTable::get(), clang::NamedDecl::getIdentifier(), clang::IdentifierInfo::getName(), and clang::ASTContext::Idents.
Referenced by clang::Sema::DefaultSynthesizeProperties().
|
inline |
Definition at line 875 of file DeclObjC.h.
Referenced by AddObjCKeyValueCompletions(), createObjCPropertyGetter(), clang::Sema::DiagnoseOwningPropertyGetterSynthesis(), clang::CodeGen::CodeGenFunction::GenerateObjCGetter(), clang::CodeGen::CodeGenFunction::generateObjCGetterBody(), clang::ASTDeclWriter::VisitObjCPropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
|
inline |
Definition at line 861 of file DeclObjC.h.
Referenced by clang::Sema::AtomicPropertySetterGetterRules(), clang::Sema::DefaultSynthesizeProperties(), clang::Sema::DiagnoseOwningPropertyGetterSynthesis(), clang::Sema::DiagnosePropertyMismatch(), clang::Sema::DiagnoseUnimplementedProperties(), clang::ObjCPropertyRefExpr::getGetterSelector(), clang::ASTContext::getObjCEncodingForPropertyDecl(), clang::Sema::HandlePropertyInClassExtension(), mustSynthesizeSetterGetterMethod(), clang::Sema::ProcessPropertyDecl(), SelectPropertyForSynthesisFromProtocols(), SuperClassImplementsProperty(), clang::ASTDeclWriter::VisitObjCPropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
|
inline |
Definition at line 862 of file DeclObjC.h.
Referenced by clang::ASTDeclWriter::VisitObjCPropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
|
inline |
Definition at line 783 of file DeclObjC.h.
Referenced by clang::Sema::AtomicPropertySetterGetterRules(), clang::ASTDeclWriter::VisitObjCPropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
|
inline |
Definition at line 799 of file DeclObjC.h.
Referenced by clang::Sema::AtomicPropertySetterGetterRules(), checkARCPropertyImpl(), checkAtomicPropertyMismatch(), clang::Sema::checkUnsafeExprAssigns(), createObjCPropertyGetter(), clang::Sema::DefaultSynthesizeProperties(), clang::Sema::DiagnosePropertyMismatch(), clang::CodeGen::CodeGenFunction::GenerateObjCAtomicGetterCopyHelperFunction(), clang::CodeGen::CodeGenFunction::GenerateObjCAtomicSetterCopyHelperFunction(), clang::ASTContext::getObjCEncodingForPropertyDecl(), clang::Sema::HandlePropertyInClassExtension(), clang::Sema::ProcessPropertyDecl(), setImpliedPropertyAttributeForReadOnlyProperty(), SuperClassImplementsProperty(), clang::ASTDeclWriter::VisitObjCPropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
|
inline |
Definition at line 809 of file DeclObjC.h.
Referenced by clang::Sema::AtomicPropertySetterGetterRules(), checkAllAtProps(), checkAllProps(), checkAtomicPropertyMismatch(), clang::Sema::checkUnsafeExprAssigns(), clang::Sema::HandlePropertyInClassExtension(), hasWrittenStorageAttribute(), SelectPropertyForSynthesisFromProtocols(), clang::ASTDeclWriter::VisitObjCPropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
|
inline |
Definition at line 885 of file DeclObjC.h.
Referenced by clang::Sema::DefaultSynthesizeProperties(), clang::Sema::DiagnoseUnimplementedProperties(), isOptional(), clang::ASTDeclWriter::VisitObjCPropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
|
inline |
Definition at line 895 of file DeclObjC.h.
Referenced by findBackingIvar(), clang::Sema::GetIvarBackingPropertyAccessor(), clang::ASTDeclWriter::VisitObjCPropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
|
inline |
Definition at line 837 of file DeclObjC.h.
References isClassProperty(), clang::OBJC_PR_query_class, and clang::OBJC_PR_query_instance.
Referenced by clang::Sema::AtomicPropertySetterGetterRules(), clang::Sema::CreatePropertyDecl(), clang::Sema::DefaultSynthesizeProperties(), findBackingIvar(), clang::Sema::HandlePropertyInClassExtension(), and clang::ASTNodeImporter::VisitObjCPropertyImplDecl().
|
inlinestatic |
Definition at line 841 of file DeclObjC.h.
References clang::OBJC_PR_query_class, and clang::OBJC_PR_query_instance.
|
inline |
getSetterKind - Return the method used for doing assignment in the property setter.
This is only valid if the property has been defined to have a setter.
Definition at line 849 of file DeclObjC.h.
References Assign, Copy, getType(), clang::Type::isBlockPointerType(), OBJC_PR_copy, OBJC_PR_retain, OBJC_PR_strong, OBJC_PR_weak, Retain, and Weak.
Referenced by clang::ASTContext::getObjCEncodingForPropertyDecl().
|
inline |
Definition at line 878 of file DeclObjC.h.
Referenced by AddObjCKeyValueCompletions(), clang::CodeGen::CodeGenFunction::GenerateObjCSetter(), clang::CodeGen::CodeGenFunction::generateObjCSetterBody(), clang::ASTDeclWriter::VisitObjCPropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
|
inline |
Definition at line 868 of file DeclObjC.h.
Referenced by clang::Sema::AtomicPropertySetterGetterRules(), clang::Sema::DefaultSynthesizeProperties(), clang::Sema::DiagnosePropertyMismatch(), clang::ASTContext::getObjCEncodingForPropertyDecl(), clang::ObjCPropertyRefExpr::getSetterSelector(), clang::ObjCContainerDecl::HasUserDeclaredSetterMethod(), mustSynthesizeSetterGetterMethod(), clang::Sema::ProcessPropertyDecl(), SelectPropertyForSynthesisFromProtocols(), SuperClassImplementsProperty(), clang::ASTDeclWriter::VisitObjCPropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
|
inline |
Definition at line 869 of file DeclObjC.h.
Referenced by clang::ASTDeclWriter::VisitObjCPropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
|
inlineoverridevirtual |
Source range that this declaration covers.
Reimplemented from clang::Decl.
Definition at line 899 of file DeclObjC.h.
References clang::Decl::getLocation().
|
inline |
Definition at line 788 of file DeclObjC.h.
Referenced by AddObjCKeyValueCompletions(), clang::Sema::CheckObjCPropertyAttributes(), checkPropertyDeclWithOwnership(), clang::Sema::checkUnsafeExprAssigns(), createObjCPropertyGetter(), clang::Sema::DiagnosePropertyMismatch(), clang::CodeGen::CodeGenFunction::GenerateObjCAtomicGetterCopyHelperFunction(), clang::CodeGen::CodeGenFunction::generateObjCGetterBody(), clang::ASTContext::getObjCEncodingForPropertyDecl(), getSetterKind(), clang::Sema::HandlePropertyInClassExtension(), SelectPropertyForSynthesisFromProtocols(), clang::ASTDeclWriter::VisitObjCPropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
|
inline |
Definition at line 786 of file DeclObjC.h.
Referenced by clang::Sema::AtomicPropertySetterGetterRules(), checkAllAtProps(), clang::ASTDeclWriter::VisitObjCPropertyDecl(), and clang::ASTNodeImporter::VisitObjCPropertyDecl().
Retrieve the type when this property is used with a specific base object type.
Definition at line 2199 of file DeclObjC.cpp.
References clang::Decl::getDeclContext(), clang::Property, and clang::QualType::substObjCMemberType().
|
inline |
isAtomic - Return true if the property is atomic.
Definition at line 825 of file DeclObjC.h.
References OBJC_PR_atomic.
|
inline |
Definition at line 836 of file DeclObjC.h.
References OBJC_PR_class.
Referenced by clang::Sema::AtomicPropertySetterGetterRules(), clang::Sema::DefaultSynthesizeProperties(), clang::Sema::DiagnoseOwningPropertyGetterSynthesis(), DiagnoseUnimplementedAccessor(), getQueryKind(), and isInstanceProperty().
|
inline |
Definition at line 835 of file DeclObjC.h.
References isClassProperty().
|
inline |
Definition at line 888 of file DeclObjC.h.
References getPropertyImplementation().
|
inline |
isReadOnly - Return true iff the property has a setter.
Definition at line 820 of file DeclObjC.h.
References OBJC_PR_readonly.
Referenced by findBackingIvar(), clang::ASTContext::getObjCEncodingForPropertyDecl(), clang::Sema::HandlePropertyInClassExtension(), hasWrittenStorageAttribute(), clang::Sema::ProcessPropertyDecl(), and SelectPropertyForSynthesisFromProtocols().
|
inline |
isRetaining - Return true if the property retains its value.
Definition at line 830 of file DeclObjC.h.
References OBJC_PR_copy, OBJC_PR_retain, and OBJC_PR_strong.
|
inline |
Definition at line 805 of file DeclObjC.h.
Referenced by checkAtomicPropertyMismatch().
|
inline |
Definition at line 781 of file DeclObjC.h.
Referenced by clang::ASTDeclReader::VisitObjCPropertyDecl().
|
inline |
Definition at line 876 of file DeclObjC.h.
Referenced by clang::ASTNodeImporter::VisitObjCPropertyDecl(), and clang::ASTDeclReader::VisitObjCPropertyDecl().
|
inline |
Definition at line 863 of file DeclObjC.h.
Referenced by clang::ASTNodeImporter::VisitObjCPropertyDecl(), and clang::ASTDeclReader::VisitObjCPropertyDecl().
|
inline |
Definition at line 784 of file DeclObjC.h.
Referenced by clang::ASTDeclReader::VisitObjCPropertyDecl().
|
inline |
Definition at line 802 of file DeclObjC.h.
Referenced by clang::Sema::CheckObjCPropertyAttributes(), clang::ASTNodeImporter::VisitObjCPropertyDecl(), and clang::ASTDeclReader::VisitObjCPropertyDecl().
|
inline |
Definition at line 813 of file DeclObjC.h.
Referenced by clang::ASTNodeImporter::VisitObjCPropertyDecl(), and clang::ASTDeclReader::VisitObjCPropertyDecl().
|
inline |
Definition at line 882 of file DeclObjC.h.
Referenced by clang::ASTDeclReader::VisitObjCPropertyDecl().
|
inline |
Definition at line 892 of file DeclObjC.h.
Referenced by clang::ASTNodeImporter::VisitObjCPropertyDecl(), and clang::ASTDeclReader::VisitObjCPropertyDecl().
|
inline |
Definition at line 879 of file DeclObjC.h.
Referenced by clang::ASTNodeImporter::VisitObjCPropertyDecl(), and clang::ASTDeclReader::VisitObjCPropertyDecl().
|
inline |
Definition at line 870 of file DeclObjC.h.
Referenced by clang::ASTNodeImporter::VisitObjCPropertyDecl(), and clang::ASTDeclReader::VisitObjCPropertyDecl().
|
inline |
Definition at line 790 of file DeclObjC.h.
Referenced by clang::ASTDeclReader::VisitObjCPropertyDecl().
1.8.6