A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://clang.llvm.org/doxygen/classclang_1_1ObjCProtocolDecl.html below:

clang: clang::ObjCProtocolDecl Class Reference

using  protocol_iterator = ObjCProtocolList::iterator   using  protocol_range = llvm::iterator_range< protocol_iterator >   using  protocol_loc_iterator = ObjCProtocolList::loc_iterator   using  protocol_loc_range = llvm::iterator_range< protocol_loc_iterator >   using  redecl_range = redeclarable_base::redecl_range   using  redecl_iterator = redeclarable_base::redecl_iterator   using  prop_iterator = specific_decl_iterator< ObjCPropertyDecl >   using  prop_range = llvm::iterator_range< specific_decl_iterator< ObjCPropertyDecl > >   using  instprop_iterator = filtered_decl_iterator< ObjCPropertyDecl, &ObjCPropertyDecl::isInstanceProperty >   using  instprop_range = llvm::iterator_range< instprop_iterator >   using  classprop_iterator = filtered_decl_iterator< ObjCPropertyDecl, &ObjCPropertyDecl::isClassProperty >   using  classprop_range = llvm::iterator_range< classprop_iterator >   using  method_iterator = specific_decl_iterator< ObjCMethodDecl >   using  method_range = llvm::iterator_range< specific_decl_iterator< ObjCMethodDecl > >   using  instmeth_iterator = filtered_decl_iterator< ObjCMethodDecl, &ObjCMethodDecl::isInstanceMethod >   using  instmeth_range = llvm::iterator_range< instmeth_iterator >   using  classmeth_iterator = filtered_decl_iterator< ObjCMethodDecl, &ObjCMethodDecl::isClassMethod >   using  classmeth_range = llvm::iterator_range< classmeth_iterator >   using  PropertyMap = llvm::MapVector< std::pair< IdentifierInfo *, unsigned >, ObjCPropertyDecl * >   using  ProtocolPropertySet = llvm::SmallDenseSet< const ObjCProtocolDecl *, 8 >   using  PropertyDeclOrder = llvm::SmallVector< ObjCPropertyDecl *, 8 >   enum   ExplicitVisibilityKind { VisibilityForType , VisibilityForValue }   Kinds of explicit visibility. More...
  enum   Kind   Lists the kind of concrete classes of Decl. More...
  enum   IdentifierNamespace {
  IDNS_Label = 0x0001 , IDNS_Tag = 0x0002 , IDNS_Type = 0x0004 , IDNS_Member = 0x0008 ,
  IDNS_Namespace = 0x0010 , IDNS_Ordinary = 0x0020 , IDNS_ObjCProtocol = 0x0040 , IDNS_OrdinaryFriend = 0x0080 ,
  IDNS_TagFriend = 0x0100 , IDNS_Using = 0x0200 , IDNS_NonMemberOperator = 0x0400 , IDNS_LocalExtern = 0x0800 ,
  IDNS_OMPReduction = 0x1000 , IDNS_OMPMapper = 0x2000
}   IdentifierNamespace - The different namespaces in which declarations may appear. More...
  enum   ObjCDeclQualifier {
  OBJC_TQ_None = 0x0 , OBJC_TQ_In = 0x1 , OBJC_TQ_Inout = 0x2 , OBJC_TQ_Out = 0x4 ,
  OBJC_TQ_Bycopy = 0x8 , OBJC_TQ_Byref = 0x10 , OBJC_TQ_Oneway = 0x20 , OBJC_TQ_CSNullability = 0x40
}   ObjCDeclQualifier - 'Qualifiers' written next to the return and parameter types in method declarations. More...
  enum class   ModuleOwnershipKind : unsigned char {
  Unowned , Visible , VisibleWhenImported , ReachableWhenImported ,
  ModulePrivate
}   The kind of ownership a declaration has, for visibility purposes. More...
  enum   FriendObjectKind { FOK_None , FOK_Declared , FOK_Undeclared }   using  attr_iterator = AttrVec::const_iterator   using  attr_range = llvm::iterator_range< attr_iterator >   using  redecl_range = llvm::iterator_range< redecl_iterator >   using  decl_range = llvm::iterator_range< decl_iterator >   using  lookup_result = DeclContextLookupResult   using  lookup_iterator = lookup_result::iterator   using  lookups_range = llvm::iterator_range< all_lookups_iterator >   using  udir_iterator_base = llvm::iterator_adaptor_base< udir_iterator, lookup_iterator, typename lookup_iterator::iterator_category, UsingDirectiveDecl * >   using  udir_range = llvm::iterator_range< udir_iterator >   using  ddiag_range = llvm::iterator_range< DeclContext::ddiag_iterator >   using  redecl_range = llvm::iterator_range< redecl_iterator >   const ObjCProtocolListgetReferencedProtocols () const   protocol_range  protocols () const   protocol_iterator  protocol_begin () const   protocol_iterator  protocol_end () const   protocol_loc_range  protocol_locs () const   protocol_loc_iterator  protocol_loc_begin () const   protocol_loc_iterator  protocol_loc_end () const   unsigned  protocol_size () const   void  setProtocolList (ObjCProtocolDecl *const *List, unsigned Num, const SourceLocation *Locs, ASTContext &C)   setProtocolList - Set the list of protocols that this interface implements.
  bool  isNonRuntimeProtocol () const   This is true iff the protocol is tagged with the objc_non_runtime_protocol attribute.
  void  getImpliedProtocols (llvm::DenseSet< const ObjCProtocolDecl * > &IPs) const   Get the set of all protocols implied by this protocols inheritance hierarchy.
  ObjCProtocolDecllookupProtocolNamed (IdentifierInfo *PName)   ObjCMethodDecllookupMethod (Selector Sel, bool isInstance) const   ObjCMethodDecllookupInstanceMethod (Selector Sel) const   ObjCMethodDecllookupClassMethod (Selector Sel) const   bool  hasDefinition () const   Determine whether this protocol has a definition.
  ObjCProtocolDeclgetDefinition ()   Retrieve the definition of this protocol, if any.
  const ObjCProtocolDeclgetDefinition () const   Retrieve the definition of this protocol, if any.
  bool  isThisDeclarationADefinition () const   Determine whether this particular declaration is also the definition.
  void  startDefinition ()   Starts the definition of this Objective-C protocol.
  void  startDuplicateDefinitionForComparison ()   Starts the definition without sharing it with other redeclarations.
  void  mergeDuplicateDefinitionWithCommon (const ObjCProtocolDecl *Definition)   StringRef  getObjCRuntimeNameAsString () const   Produce a name to be used for protocol's metadata.
  SourceRange  getSourceRange () const override LLVM_READONLY   Source range that this declaration covers.
  ObjCProtocolDeclgetCanonicalDecl () override   Retrieves the canonical declaration of this Objective-C protocol.
  const ObjCProtocolDeclgetCanonicalDecl () const   void  collectPropertiesToImplement (PropertyMap &PM) const override   This routine collects list of properties to be implemented in the class.
  void  collectInheritedProtocolProperties (const ObjCPropertyDecl *Property, ProtocolPropertySet &PS, PropertyDeclOrder &PO) const   unsigned  getODRHash ()   Get precomputed ODRHash or add a new one.
    ObjCContainerDecl (Kind DK, DeclContext *DC, const IdentifierInfo *Id, SourceLocation nameLoc, SourceLocation atStartLoc)   prop_range  properties () const   prop_iterator  prop_begin () const   prop_iterator  prop_end () const   instprop_range  instance_properties () const   instprop_iterator  instprop_begin () const   instprop_iterator  instprop_end () const   classprop_range  class_properties () const   classprop_iterator  classprop_begin () const   classprop_iterator  classprop_end () const   method_range  methods () const   method_iterator  meth_begin () const   method_iterator  meth_end () const   instmeth_range  instance_methods () const   instmeth_iterator  instmeth_begin () const   instmeth_iterator  instmeth_end () const   classmeth_range  class_methods () const   classmeth_iterator  classmeth_begin () const   classmeth_iterator  classmeth_end () const   ObjCMethodDeclgetMethod (Selector Sel, bool isInstance, bool AllowHidden=false) const   ObjCMethodDeclgetInstanceMethod (Selector Sel, bool AllowHidden=false) const   ObjCMethodDeclgetClassMethod (Selector Sel, bool AllowHidden=false) const   bool  HasUserDeclaredSetterMethod (const ObjCPropertyDecl *P) const   This routine returns 'true' if a user declared setter method was found in the class, its protocols, its super classes or categories.
  ObjCIvarDeclgetIvarDecl (IdentifierInfo *Id) const   getIvarDecl - This method looks up an ivar in this ContextDecl.
  ObjCPropertyDeclgetProperty (const IdentifierInfo *Id, bool IsInstance) const   ObjCPropertyDeclFindPropertyDeclaration (const IdentifierInfo *PropertyId, ObjCPropertyQueryKind QueryKind) const   FindPropertyDeclaration - Finds declaration of the property given its name in 'PropertyId' and returns it.
  virtual void  collectPropertiesToImplement (PropertyMap &PM) const   This routine collects list of properties to be implemented in the class.
  SourceLocation  getAtStartLoc () const   void  setAtStartLoc (SourceLocation Loc)   SourceRange  getAtEndRange () const   void  setAtEndRange (SourceRange atEnd)   SourceRange  getSourceRange () const override LLVM_READONLY   Source range that this declaration covers.
  IdentifierInfogetIdentifier () const   Get the identifier that names this declaration, if there is one.
  StringRef  getName () const   Get the name of identifier for this declaration as a StringRef.
  std::string  getNameAsString () const   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).
  virtual void  printName (raw_ostream &OS, const PrintingPolicy &Policy) const   Pretty-print the unqualified name of this declaration.
  void  printName (raw_ostream &OS) const   Calls printName() with the ASTContext printing policy from the decl.
  DeclarationName  getDeclName () const   Get the actual, stored name of the declaration, which may be a special name.
  void  setDeclName (DeclarationName N)   Set the name of this declaration.
  void  printQualifiedName (raw_ostream &OS) const   Returns a human-readable qualified name for this declaration, like A::B::i, for i being member of namespace A::B.
  void  printQualifiedName (raw_ostream &OS, const PrintingPolicy &Policy) const   void  printNestedNameSpecifier (raw_ostream &OS) const   Print only the nested name specifier part of a fully-qualified name, including the '::' at the end.
  void  printNestedNameSpecifier (raw_ostream &OS, const PrintingPolicy &Policy) const   std::string  getQualifiedNameAsString () const   virtual void  getNameForDiagnostic (raw_ostream &OS, const PrintingPolicy &Policy, bool Qualified) const   Appends a human-readable name for this declaration into the given stream.
  bool  declarationReplaces (const 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.
  bool  hasLinkage () const   Determine whether this declaration has linkage.
  bool  isCXXClassMember () const   Determine whether this declaration is a C++ class member.
  bool  isCXXInstanceMember () const   Determine whether the given declaration is an instance member of a C++ class.
  ReservedIdentifierStatus  isReserved (const LangOptions &LangOpts) const   Determine if the declaration obeys the reserved identifier rules of the given language.
  Linkage  getLinkageInternal () const   Determine what kind of linkage this entity has.
  Linkage  getFormalLinkage () const   Get the linkage from a semantic point of view.
  bool  hasExternalFormalLinkage () const   True if this decl has external linkage.
  bool  isExternallyVisible () const   bool  isExternallyDeclarable () const   Determine whether this declaration can be redeclared in a different translation unit.
  Visibility  getVisibility () const   Determines the visibility of this entity.
  LinkageInfo  getLinkageAndVisibility () const   Determines the linkage and visibility of this entity.
  std::optional< VisibilitygetExplicitVisibility (ExplicitVisibilityKind kind) const   If visibility was explicitly specified for this declaration, return that visibility.
  bool  isLinkageValid () const   True if the computed linkage is valid.
  bool  hasLinkageBeenComputed () const   True if something has required us to compute the linkage of this declaration.
  bool  isPlaceholderVar (const LangOptions &LangOpts) const   NamedDeclgetUnderlyingDecl ()   Looks through UsingDecls and ObjCCompatibleAliasDecls for the underlying named decl.
  const NamedDeclgetUnderlyingDecl () const   NamedDeclgetMostRecentDecl ()   const NamedDeclgetMostRecentDecl () const   ObjCStringFormatFamily  getObjCFStringFormattingFamily () const   bool  isModulePrivate () const   Whether this declaration was marked as being private to the module in which it was defined.
  void  setModulePrivate ()   Specify that this declaration was marked as being private to the module in which it was defined.
    Decl ()=delete     Decl (const Decl &)=delete     Decl (Decl &&)=delete   Decloperator= (const Decl &)=delete   Decloperator= (Decl &&)=delete   virtual SourceRange  getSourceRange () const LLVM_READONLY   Source range that this declaration covers.
  SourceLocation  getBeginLoc () const LLVM_READONLY   SourceLocation  getEndLoc () const LLVM_READONLY   SourceLocation  getLocation () const   void  setLocation (SourceLocation L)   Kind  getKind () const   const char *  getDeclKindName () const   DeclgetNextDeclInContext ()   const DeclgetNextDeclInContext () const   DeclContextgetDeclContext ()   const DeclContextgetDeclContext () const   DeclContextgetNonTransparentDeclContext ()   Return the non transparent context.
  const DeclContextgetNonTransparentDeclContext () const   DeclgetNonClosureContext ()   Find the innermost non-closure ancestor of this declaration, walking up through blocks, lambdas, etc.
  const DeclgetNonClosureContext () const   TranslationUnitDeclgetTranslationUnitDecl ()   const TranslationUnitDeclgetTranslationUnitDecl () const   bool  isInAnonymousNamespace () const   bool  isInStdNamespace () const   bool  isFileContextDecl () const   ASTContextgetASTContext () const LLVM_READONLY   const LangOptionsgetLangOpts () const LLVM_READONLY   Helper to get the language options from the ASTContext.
  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.
  bool  hasAttrs () const   void  setAttrs (const AttrVec &Attrs)   AttrVecgetAttrs ()   const AttrVecgetAttrs () const   void  dropAttrs ()   void  addAttr (Attr *A)   attr_range  attrs () const   attr_iterator  attr_begin () const   attr_iterator  attr_end () const   template<typename... Ts> void  dropAttrs ()   template<typename T > void  dropAttr ()   template<typename T > llvm::iterator_range< specific_attr_iterator< T > >  specific_attrs () const   template<typename T > specific_attr_iterator< Tspecific_attr_begin () const   template<typename T > specific_attr_iterator< Tspecific_attr_end () const   template<typename T > TgetAttr () 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.
  void  setInvalidDecl (bool Invalid=true)   setInvalidDecl - Indicates the Decl had a semantic error.
  bool  isInvalidDecl () const   bool  isImplicit () const   isImplicit - Indicates whether the declaration was implicitly generated by the implementation.
  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.
  void  setIsUsed ()   Set whether the declaration is used, in the sense of odr-use.
  void  markUsed (ASTContext &C)   Mark the declaration used, in the sense of odr-use.
  bool  isReferenced () const   Whether any declaration of this entity was referenced.
  bool  isThisDeclarationReferenced () const   Whether this declaration was referenced.
  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.
  void  setTopLevelDeclInObjCContainer (bool V=true)   ExternalSourceSymbolAttr *  getExternalSourceSymbolAttr () const   Looks on this and related declarations for an applicable external source symbol attribute.
  bool  isModulePrivate () const   Whether this declaration was marked as being private to the module in which it was defined.
  bool  isInExportDeclContext () const   Whether this declaration was exported in a lexical context.
  bool  isInvisibleOutsideTheOwningModule () const   bool  isInAnotherModuleUnit () const   Whether this declaration comes from another module unit.
  bool  isInCurrentModuleUnit () const   Whether this declaration comes from the same module unit being compiled.
  bool  shouldEmitInExternalSource () const   Whether the definition of the declaration should be emitted in external sources.
  bool  isFromExplicitGlobalModule () const   Whether this declaration comes from explicit global module.
  bool  isFromGlobalModule () const   Whether this declaration comes from global module.
  bool  isInNamedModule () const   Whether this declaration comes from a named module.
  bool  isFromHeaderUnit () const   Whether this declaration comes from a header unit.
  bool  hasDefiningAttr () const   Return true if this declaration has an attribute which acts as definition of the entity, such as 'alias' or 'ifunc'.
  const AttrgetDefiningAttr () const   Return this declaration's defining attribute if it has one.
  void  setFromASTFile ()   Set the FromASTFile flag.
  void  setOwningModuleID (unsigned ID)   Set the owning module ID.
  AvailabilityResult  getAvailability (std::string *Message=nullptr, VersionTuple EnclosingVersion=VersionTuple(), StringRef *RealizedPlatform=nullptr) const   Determine the availability of the given declaration.
  VersionTuple  getVersionIntroduced () const   Retrieve the version of the target platform in which this declaration was introduced.
  bool  isDeprecated (std::string *Message=nullptr) const   Determine whether this declaration is marked 'deprecated'.
  bool  isUnavailable (std::string *Message=nullptr) const   Determine whether this declaration is marked 'unavailable'.
  bool  isWeakImported () const   Determine whether this is a weak-imported symbol.
  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.
  bool  isFromASTFile () const   Determine whether this declaration came from an AST file (such as a precompiled header or module) rather than having been parsed.
  GlobalDeclID  getGlobalID () const   Retrieve the global declaration ID associated with this declaration, which specifies where this Decl was loaded from.
  unsigned  getOwningModuleID () const   Retrieve the global ID of the module that owns this particular declaration.
  ModulegetImportedOwningModule () const   Get the imported owning module, if this decl is from an imported (non-local) module.
  ModulegetLocalOwningModule () const   Get the local owning module, if known.
  void  setLocalOwningModule (Module *M)   bool  hasOwningModule () const   Is this declaration owned by some module?
  ModulegetOwningModule () const   Get the module that owns this declaration (for visibility purposes).
  ModulegetTopLevelOwningNamedModule () const   Get the top level owning named module that owns this declaration if any.
  ModulegetOwningModuleForLinkage () const   Get the module that owns this declaration for linkage purposes.
  bool  isUnconditionallyVisible () const   Determine whether this declaration is definitely visible to name lookup, independent of whether the owning module is visible.
  bool  isReachable () const   void  setVisibleDespiteOwningModule ()   Set that this declaration is globally visible, even if it came from a module that is not visible.
  ModuleOwnershipKind  getModuleOwnershipKind () const   Get the kind of module ownership for this declaration.
  void  setModuleOwnershipKind (ModuleOwnershipKind MOK)   Set whether this declaration is hidden from name lookup.
  unsigned  getIdentifierNamespace () const   bool  isInIdentifierNamespace (unsigned NS) const   bool  hasTagIdentifierNamespace () const   DeclContextgetLexicalDeclContext ()   getLexicalDeclContext - The declaration context where this Decl was lexically declared (LexicalDC).
  const DeclContextgetLexicalDeclContext () const   virtual bool  isOutOfLine () const   Determine whether this declaration is declared out of line (outside its semantic context).
  void  setDeclContext (DeclContext *DC)   setDeclContext - Set both the semantic and lexical DeclContext to DC.
  void  setLexicalDeclContext (DeclContext *DC)   bool  isTemplated () const   Determine whether this declaration is a templated entity (whether it is.
  unsigned  getTemplateDepth () const   Determine the number of levels of template parameter surrounding this declaration.
  bool  isDefinedOutsideFunctionOrMethod () const   isDefinedOutsideFunctionOrMethod - This predicate returns true if this scoped decl is defined outside the current function or method.
  bool  isInLocalScopeForInstantiation () const   Determine whether a substitution into this declaration would occur as part of a substitution into a dependent local scope.
  const DeclContextgetParentFunctionOrMethod (bool LexicalParent=false) const   If this decl is defined inside a function/method/block it returns the corresponding DeclContext, otherwise it returns null.
  DeclContextgetParentFunctionOrMethod (bool LexicalParent=false)   virtual DeclgetCanonicalDecl ()   Retrieves the "canonical" declaration of the given declaration.
  const DeclgetCanonicalDecl () const   bool  isCanonicalDecl () const   Whether this particular Decl is a canonical one.
  redecl_range  redecls () const   Returns an iterator range for all the redeclarations of the same decl.
  redecl_iterator  redecls_begin () const   redecl_iterator  redecls_end () const   DeclgetPreviousDecl ()   Retrieve the previous declaration that declares the same entity as this declaration, or NULL if there is no previous declaration.
  const DeclgetPreviousDecl () const   Retrieve the previous declaration that declares the same entity as this declaration, or NULL if there is no previous declaration.
  bool  isFirstDecl () const   True if this is the first declaration in its redeclaration chain.
  DeclgetMostRecentDecl ()   Retrieve the most recent declaration that declares the same entity as this declaration (which may be this declaration).
  const DeclgetMostRecentDecl () const   Retrieve the most recent declaration that declares the same entity as this declaration (which may be this declaration).
  virtual StmtgetBody () 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.
  virtual bool  hasBody () const   Returns true if this Decl represents a declaration for a body of code, such as a function or method definition.
  SourceLocation  getBodyRBrace () const   getBodyRBrace - Gets the right brace of the body, if a body exists.
  bool  isTemplateParameter () const   isTemplateParameter - Determines whether this declaration is a template parameter.
  bool  isTemplateParameterPack () const   isTemplateParameter - Determines whether this declaration is a template parameter pack.
  bool  isParameterPack () const   Whether this declaration is a parameter pack.
  bool  isTemplateDecl () const   returns true if this declaration is a template
  bool  isFunctionOrFunctionTemplate () const   Whether this declaration is a function or function template.
  TemplateDeclgetDescribedTemplate () const   If this is a declaration that describes some template, this method returns that template declaration.
  const TemplateParameterListgetDescribedTemplateParams () const   If this is a declaration that describes some template or partial specialization, this returns the corresponding template parameter list.
  FunctionDeclgetAsFunction () LLVM_READONLY   Returns the function itself, or the templated function if this is a function template.
  const FunctionDeclgetAsFunction () const   void  setLocalExternDecl ()   Changes the namespace of this declaration to reflect that it's a function-local extern declaration.
  bool  isLocalExternDecl () const   Determine whether this is a block-scope declaration with linkage.
  void  setObjectOfFriendDecl (bool PerformFriendInjection=false)   Changes the namespace of this declaration to reflect that it's the object of a friend declaration.
  void  clearIdentifierNamespace ()   Clears the namespace of this declaration.
  FriendObjectKind  getFriendObjectKind () const   Determines whether this declaration is the object of a friend declaration and, if so, what kind.
  void  setNonMemberOperator ()   Specifies that this declaration is a C++ overloaded non-member.
  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, ASTDumpOutputFormat OutputFormat=ADOF_Default) const   int64_t  getID () const   const FunctionTypegetFunctionType (bool BlocksToo=true) const   Looks through the Decl's underlying type to extract a FunctionType when possible.
  bool  isFunctionPointerType () const     ~DeclContext ()   bool  hasValidDeclKind () const   Decl::Kind  getDeclKind () const   const char *  getDeclKindName () const   DeclContextgetParent ()   getParent - Returns the containing DeclContext.
  const DeclContextgetParent () const   DeclContextgetLexicalParent ()   getLexicalParent - Returns the containing lexical DeclContext.
  const DeclContextgetLexicalParent () const   DeclContextgetLookupParent ()   Find the parent context of this context that will be used for unqualified name lookup.
  const DeclContextgetLookupParent () const   ASTContextgetParentASTContext () const   bool  isClosure () const   const BlockDeclgetInnermostBlockDecl () const   Return this DeclContext if it is a BlockDecl.
  bool  isObjCContainer () const   bool  isFunctionOrMethod () const   bool  isLookupContext () const   Test whether the context supports looking up names.
  bool  isFileContext () const   bool  isTranslationUnit () const   bool  isRecord () const   bool  isRequiresExprBody () const   bool  isNamespace () const   bool  isStdNamespace () const   bool  isInlineNamespace () const   bool  isDependentContext () const   Determines whether this context is dependent on a template parameter.
  bool  isTransparentContext () const   isTransparentContext - Determines whether this context is a "transparent" context, meaning that the members declared in this context are semantically declared in the nearest enclosing non-transparent (opaque) context but are lexically declared in this context.
  bool  isExternCContext () const   Determines whether this context or some of its ancestors is a linkage specification context that specifies C linkage.
  const LinkageSpecDeclgetExternCContext () const   Retrieve the nearest enclosing C linkage specification context.
  bool  isExternCXXContext () const   Determines whether this context or some of its ancestors is a linkage specification context that specifies C++ linkage.
  bool  Equals (const DeclContext *DC) const   Determine whether this declaration context is equivalent to the declaration context DC.
  bool  Encloses (const DeclContext *DC) const   Determine whether this declaration context encloses the declaration context DC.
  DeclgetNonClosureAncestor ()   Find the nearest non-closure ancestor of this context, i.e.
  const DeclgetNonClosureAncestor () const   DeclContextgetNonTransparentContext ()   const DeclContextgetNonTransparentContext () const   DeclContextgetPrimaryContext ()   getPrimaryContext - There may be many different declarations of the same entity (including forward declarations of classes, multiple definitions of namespaces, etc.), each with a different set of declarations.
  const DeclContextgetPrimaryContext () const   DeclContextgetRedeclContext ()   getRedeclContext - Retrieve the context in which an entity conflicts with other entities of the same name, or where it is a redeclaration if the two entities are compatible.
  const DeclContextgetRedeclContext () const   DeclContextgetEnclosingNamespaceContext ()   Retrieve the nearest enclosing namespace context.
  const DeclContextgetEnclosingNamespaceContext () const   RecordDeclgetOuterLexicalRecordContext ()   Retrieve the outermost lexically enclosing record context.
  const RecordDeclgetOuterLexicalRecordContext () const   bool  InEnclosingNamespaceSetOf (const DeclContext *NS) const   Test if this context is part of the enclosing namespace set of the context NS, as defined in C++0x [namespace.def]p9.
  void  collectAllContexts (SmallVectorImpl< DeclContext * > &Contexts)   Collects all of the declaration contexts that are semantically connected to this declaration context.
  decl_range  decls () const   decls_begin/decls_end - Iterate over the declarations stored in this context.
  decl_iterator  decls_begin () const   decl_iterator  decls_end () const   bool  decls_empty () const   decl_range  noload_decls () const   noload_decls_begin/end - Iterate over the declarations stored in this context that are currently loaded; don't attempt to retrieve anything from an external source.
  decl_iterator  noload_decls_begin () const   decl_iterator  noload_decls_end () const   void  addDecl (Decl *D)   Add the declaration D into this context.
  void  addDeclInternal (Decl *D)   Add the declaration D into this context, but suppress searches for external declarations with the same name.
  void  addHiddenDecl (Decl *D)   Add the declaration D to this context without modifying any lookup tables.
  void  removeDecl (Decl *D)   Removes a declaration from this context.
  bool  containsDecl (Decl *D) const   Checks whether a declaration is in this context.
  bool  containsDeclAndLoad (Decl *D) const   Checks whether a declaration is in this context.
  lookup_result  lookup (DeclarationName Name) const   lookup - Find the declarations (if any) with the given Name in this context.
  lookup_result  noload_lookup (DeclarationName Name)   Find the declarations with the given name that are visible within this context; don't attempt to retrieve anything from an external source.
  void  localUncachedLookup (DeclarationName Name, SmallVectorImpl< NamedDecl * > &Results)   A simplistic name lookup mechanism that performs name lookup into this declaration context without consulting the external source.
  void  makeDeclVisibleInContext (NamedDecl *D)   Makes a declaration visible within this context.
  lookups_range  lookups () const   lookups_range  noload_lookups (bool PreserveInternalState) const   all_lookups_iterator  lookups_begin () const   Iterators over all possible lookups within this context.
  all_lookups_iterator  lookups_end () const   all_lookups_iterator  noload_lookups_begin () const   Iterators over all possible lookups within this context that are currently loaded; don't attempt to retrieve anything from an external source.
  all_lookups_iterator  noload_lookups_end () const   udir_range  using_directives () const   Returns iterator range [First, Last) of UsingDirectiveDecls stored within this context.
  ddiag_range  ddiags () const   void  setMustBuildLookupTable ()   Mark that there are external lexical declarations that we need to include in our lookup table (and that are not available as external visible lookups).
  StoredDeclsMapgetLookupPtr () const   Retrieve the internal representation of the lookup structure.
  StoredDeclsMapbuildLookup ()   Ensure the lookup structure is fully-built and return it.
  bool  hasExternalLexicalStorage () const   Whether this DeclContext has external storage containing additional declarations that are lexically in this context.
  void  setHasExternalLexicalStorage (bool ES=true) const   State whether this DeclContext has external storage for declarations lexically in this context.
  bool  hasExternalVisibleStorage () const   Whether this DeclContext has external storage containing additional declarations that are visible in this context.
  void  setHasExternalVisibleStorage (bool ES=true) const   State whether this DeclContext has external storage for declarations visible in this context.
  bool  isDeclInLexicalTraversal (const Decl *D) const   Determine whether the given declaration is stored in the list of declarations lexically within this context.
  void  setUseQualifiedLookup (bool use=true) const   bool  shouldUseQualifiedLookup () const   void  dumpAsDecl () const   void  dumpAsDecl (const ASTContext *Ctx) const   void  dumpDeclContext () const   void  dumpLookups () const   void  dumpLookups (llvm::raw_ostream &OS, bool DumpDecls=false, bool Deserialize=false) const     Redeclarable (const ASTContext &Ctx)   ObjCProtocolDeclgetPreviousDecl ()   Return the previous declaration of this declaration or NULL if this is the first declaration.
  const ObjCProtocolDeclgetPreviousDecl () const   ObjCProtocolDeclgetFirstDecl ()   Return the first declaration of this declaration or itself if this is the only declaration.
  const ObjCProtocolDeclgetFirstDecl () const   Return the first declaration of this declaration or itself if this is the only declaration.
  bool  isFirstDecl () const   True if this is the first declaration in its redeclaration chain.
  ObjCProtocolDeclgetMostRecentDecl ()   Returns the most recent (re)declaration of this declaration.
  const ObjCProtocolDeclgetMostRecentDecl () const   Returns the most recent (re)declaration of this declaration.
  void  setPreviousDecl (ObjCProtocolDecl *PrevDecl)   Set the previous declaration.
  redecl_range  redecls () const   Returns an iterator range for all the redeclarations of the same decl.
  redecl_iterator  redecls_begin () const   redecl_iterator  redecls_end () const   static ObjCProtocolDeclCreate (ASTContext &C, DeclContext *DC, IdentifierInfo *Id, SourceLocation nameLoc, SourceLocation atStartLoc, ObjCProtocolDecl *PrevDecl)   static ObjCProtocolDeclCreateDeserialized (ASTContext &C, GlobalDeclID ID)   static bool  classof (const Decl *D)   static bool  classofKind (Kind K)   static bool  classof (const Decl *D)   static bool  classofKind (Kind K)   static DeclContextcastToDeclContext (const ObjCContainerDecl *D)   static ObjCContainerDeclcastFromDeclContext (const DeclContext *DC)   static bool  classof (const Decl *D)   static bool  classofKind (Kind K)   static bool  isFlexibleArrayMemberLike (ASTContext &Context, const Decl *D, QualType Ty, LangOptions::StrictFlexArraysLevelKind StrictFlexArraysLevel, bool IgnoreTemplateOrMacroSubstitution)   Whether it resembles a flexible array member.
  static unsigned  getIdentifierNamespaceForKind (Kind DK)   static bool  isTagIdentifierNamespace (unsigned NS)   static void  add (Kind k)   static void  EnableStatistics ()   static void  PrintStats ()   static bool  classofKind (Kind K)   static DeclContextcastToDeclContext (const Decl *)   static DeclcastFromDeclContext (const DeclContext *)   static void  printGroup (Decl **Begin, unsigned NumDecls, raw_ostream &Out, const PrintingPolicy &Policy, unsigned Indentation=0)   static bool  classof (const Decl *D)   static bool  classof (const DeclContext *D)   enum   { NumOdrHashBits = 25 }   enum   { NumDeclContextBits = 13 }   Number of bits in DeclContextBitfields. More...
  enum   { NumNamespaceDeclBits = NumDeclContextBits + 2 }   Number of inherited and non-inherited bits in NamespaceDeclBitfields. More...
  enum   { NumTagDeclBits = NumDeclContextBits + 10 }   Number of inherited and non-inherited bits in TagDeclBitfields. More...
  enum   { NumEnumDeclBits = NumTagDeclBits + 20 }   Number of inherited and non-inherited bits in EnumDeclBitfields. More...
  enum   { NumRecordDeclBits = NumTagDeclBits + 41 }   Number of inherited and non-inherited bits in RecordDeclBitfields. More...
  enum   { NumOMPDeclareReductionDeclBits = NumDeclContextBits + 2 }   Number of inherited and non-inherited bits in OMPDeclareReductionDeclBitfields. More...
  enum   { NumFunctionDeclBits = NumDeclContextBits + 31 }   Number of inherited and non-inherited bits in FunctionDeclBitfields. More...
  enum   { NumCXXConstructorDeclBits = NumFunctionDeclBits + 20 }   Number of inherited and non-inherited bits in CXXConstructorDeclBitfields. More...
  enum   { NumObjCMethodDeclBits = NumDeclContextBits + 24 }   Number of inherited and non-inherited bits in ObjCMethodDeclBitfields. More...
  enum   { NumObjCContainerDeclBits = 64 }   Number of inherited and non-inherited bits in ObjCContainerDeclBitfields. More...
  enum   { NumLinkageSpecDeclBits = NumDeclContextBits + 4 }   Number of inherited and non-inherited bits in LinkageSpecDeclBitfields. More...
  enum   { NumBlockDeclBits = NumDeclContextBits + 5 }   Number of inherited and non-inherited bits in BlockDeclBitfields. More...
    NamedDecl (Kind DK, DeclContext *DC, SourceLocation L, DeclarationName N)   void *  operator new (std::size_t Size, const ASTContext &Ctx, GlobalDeclID ID, std::size_t Extra=0)   Allocate memory for a deserialized declaration.
  void *  operator new (std::size_t Size, const ASTContext &Ctx, DeclContext *Parent, std::size_t Extra=0)   Allocate memory for a non-deserialized declaration.
    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.
  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.
  bool  hasLocalOwningModuleStorage () const   virtual DeclgetNextRedeclarationImpl ()   Returns the next redeclaration or itself if this is the only decl.
  virtual DeclgetPreviousDeclImpl ()   Implementation of getPreviousDecl(), to be overridden by any subclass that has a redeclaration chain.
  virtual DeclgetMostRecentDeclImpl ()   Implementation of getMostRecentDecl(), to be overridden by any subclass that has a redeclaration chain.
  ASTMutationListenergetASTMutationListener () const     DeclContext (Decl::Kind K)   ObjCProtocolDeclgetNextRedeclaration () const   static std::pair< Decl *, Decl * >  BuildDeclChain (ArrayRef< Decl * > Decls, bool FieldsAlreadyLoaded)   Build up a chain of declarations.
  static DeclLink  PreviousDeclLink (ObjCProtocolDecl *D)   static DeclLink  LatestDeclLink (const ASTContext &Ctx)   llvm::PointerIntPair< Decl *, 3, ModuleOwnershipKindNextInContextAndBits   The next declaration within the same lexical DeclContext.
  unsigned  Access: 2   Access - Used by C++ decls for the access specifier.
  unsigned  FromASTFile: 1   Whether this declaration was loaded from an AST file.
  unsigned  IdentifierNamespace: 14   IdentifierNamespace - This specifies what IDNS_* namespace this lives in.
  unsigned  CacheValidAndLinkage: 3   If 0, we have not computed the linkage of this declaration.
  StoredDeclsMapLookupPtr = nullptr   Pointer to the data structure used to lookup declarations within this context (or a DependentStoredDeclsMap if this is a dependent context).
  union {    DeclContextBitfields   DeclContextBits      NamespaceDeclBitfields   NamespaceDeclBits      TagDeclBitfields   TagDeclBits      EnumDeclBitfields   EnumDeclBits      RecordDeclBitfields   RecordDeclBits      OMPDeclareReductionDeclBitfields   OMPDeclareReductionDeclBits      FunctionDeclBitfields   FunctionDeclBits      CXXConstructorDeclBitfields   CXXConstructorDeclBits      ObjCMethodDeclBitfields   ObjCMethodDeclBits      ObjCContainerDeclBitfields   ObjCContainerDeclBits      LinkageSpecDeclBitfields   LinkageSpecDeclBits      BlockDeclBitfields   BlockDeclBits   };    This anonymous union stores the bits belonging to DeclContext and classes deriving from it.
  DeclFirstDecl = nullptr   FirstDecl - The first declaration stored within this declaration context.
  DeclLastDecl = nullptr   LastDecl - The last declaration stored within this declaration context.
  DeclLink  RedeclLink   Points to the next redeclaration in the chain.
  ObjCProtocolDeclFirst  

Represents an Objective-C protocol declaration.

Objective-C protocols declare a pure abstract type (i.e., no instance variables are permitted). Protocols originally drew inspiration from C++ pure virtual functions (a C++ feature with nice semantics and lousy syntax:-). Here is an example:

\@protocol NSDraggingInfo <refproto1, refproto2>

- (NSWindow *)draggingDestinationWindow;

- (NSImage *)draggedImage;

\@end

This says that NSDraggingInfo requires two methods and requires everything that the two "referenced protocols" 'refproto1' and 'refproto2' require as well.

\@interface ImplementsNSDraggingInfo : NSObject \<NSDraggingInfo>

\@end

ObjC protocols inspired Java interfaces. Unlike Java, ObjC classes and protocols are in distinct namespaces. For example, Cocoa defines both an NSObject protocol and class (which isn't allowed in Java). As a result, protocols are referenced using angle brackets as follows:

id <NSDraggingInfo> anyObjectThatImplementsNSDraggingInfo;

Definition at line 2082 of file DeclObjC.h.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4