Commit c863b9bc authored by Dimitri van Heesch's avatar Dimitri van Heesch
Browse files

Merge branch 'groleo-master'

parents cfde6cdd d1e39098
Loading
Loading
Loading
Loading
+16 −3
Original line number Original line Diff line number Diff line
@@ -187,6 +187,8 @@ class ClassDefImpl


    bool isGeneric;
    bool isGeneric;


    bool isAnonymous;

    uint64 spec;
    uint64 spec;
};
};


@@ -248,6 +250,7 @@ void ClassDefImpl::init(const char *defFileName, const char *name,
    isLocal=FALSE;
    isLocal=FALSE;
  }
  }
  isGeneric = lang==SrcLangExt_CSharp && QCString(name).find('<')!=-1;
  isGeneric = lang==SrcLangExt_CSharp && QCString(name).find('<')!=-1;
  isAnonymous = QCString(name).find('@')!=-1;
}
}


ClassDefImpl::ClassDefImpl() : vhdlSummaryTitles(17)
ClassDefImpl::ClassDefImpl() : vhdlSummaryTitles(17)
@@ -1772,7 +1775,7 @@ bool ClassDef::visibleInParentsDeclList() const
  static bool hideUndocClasses = Config_getBool("HIDE_UNDOC_CLASSES");
  static bool hideUndocClasses = Config_getBool("HIDE_UNDOC_CLASSES");
  static bool extractLocalClasses = Config_getBool("EXTRACT_LOCAL_CLASSES");
  static bool extractLocalClasses = Config_getBool("EXTRACT_LOCAL_CLASSES");
  bool linkable = isLinkable();
  bool linkable = isLinkable();
  return (name().find('@')==-1 && !isExtension() &&
  return (!isAnonymous() && !isExtension() &&
          (protection()!=::Private || extractPrivate) &&
          (protection()!=::Private || extractPrivate) &&
          (linkable || (!hideUndocClasses && (!isLocal() || extractLocalClasses)))
          (linkable || (!hideUndocClasses && (!isLocal() || extractLocalClasses)))
         );
         );
@@ -2597,7 +2600,7 @@ bool ClassDef::isLinkableInProject() const
  {
  {
    return !name().isEmpty() &&                    /* has a name */
    return !name().isEmpty() &&                    /* has a name */
      !isArtificial() && !isHidden() &&            /* not hidden */
      !isArtificial() && !isHidden() &&            /* not hidden */
      name().find('@')==-1 &&                      /* not anonymous */
      !isAnonymous() &&                            /* not anonymous */
      protectionLevelVisible(m_impl->prot)      && /* private/internal */
      protectionLevelVisible(m_impl->prot)      && /* private/internal */
      (!m_impl->isLocal      || extractLocal)   && /* local */
      (!m_impl->isLocal      || extractLocal)   && /* local */
      (hasDocumentation()    || !hideUndoc)     && /* documented */
      (hasDocumentation()    || !hideUndoc)     && /* documented */
@@ -2629,7 +2632,7 @@ bool ClassDef::isVisibleInHierarchy()
  return // show all classes or a subclass is visible
  return // show all classes or a subclass is visible
      (allExternals || hasNonReferenceSuperClass()) &&
      (allExternals || hasNonReferenceSuperClass()) &&
      // and not an anonymous compound
      // and not an anonymous compound
      name().find('@')==-1 &&
      !isAnonymous() &&
      // not an artificially introduced class
      // not an artificially introduced class
      /*!isArtificial() &&*/  // 1.8.2: allowed these to appear
      /*!isArtificial() &&*/  // 1.8.2: allowed these to appear
      // and not privately inherited
      // and not privately inherited
@@ -4608,3 +4611,13 @@ bool ClassDef::subGrouping() const
  return m_impl->subGrouping;
  return m_impl->subGrouping;
}
}


void ClassDef::setName(const char *name)
{
  m_impl->isAnonymous = QCString(name).find('@')!=-1;
  Definition::setName(name);
}

bool ClassDef::isAnonymous() const
{
  return m_impl->isAnonymous;
}
+2 −0
Original line number Original line Diff line number Diff line
@@ -310,6 +310,7 @@ class ClassDef : public Definition
    bool isJavaEnum() const;
    bool isJavaEnum() const;


    bool isGeneric() const;
    bool isGeneric() const;
    bool isAnonymous() const;
    const ClassSDict *innerClasses() const;
    const ClassSDict *innerClasses() const;
    QCString title() const;
    QCString title() const;


@@ -360,6 +361,7 @@ class ClassDef : public Definition


    void addTaggedInnerClass(ClassDef *cd);
    void addTaggedInnerClass(ClassDef *cd);
    void setTagLessReference(ClassDef *cd);
    void setTagLessReference(ClassDef *cd);
    void setName(const char *name);


    //-----------------------------------------------------------------------------------
    //-----------------------------------------------------------------------------------
    // --- actions ----
    // --- actions ----
+1 −1
Original line number Original line Diff line number Diff line
@@ -271,7 +271,7 @@ class Definition : public DefinitionIntf
    //-----------------------------------------------------------------------------------
    //-----------------------------------------------------------------------------------


    /*! Sets a new \a name for the definition */
    /*! Sets a new \a name for the definition */
    void setName(const char *name);
    virtual void setName(const char *name);


    /*! Sets a unique id for the symbol. Used for libclang integration. */
    /*! Sets a unique id for the symbol. Used for libclang integration. */
    void setId(const char *name);
    void setId(const char *name);