summaryrefslogtreecommitdiffstats
path: root/src/entry.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/entry.h')
-rw-r--r--src/entry.h33
1 files changed, 13 insertions, 20 deletions
diff --git a/src/entry.h b/src/entry.h
index 12bd897..0391075 100644
--- a/src/entry.h
+++ b/src/entry.h
@@ -18,7 +18,6 @@
#ifndef ENTRY_H
#define ENTRY_H
-#include <qlist.h>
#include <qgstring.h>
#include <vector>
@@ -30,8 +29,6 @@
struct SectionInfo;
class QFile;
class FileDef;
-class FileStorage;
-class StorageIntf;
struct ListItemInfo;
/** This class stores information about an inheritance relation
@@ -197,9 +194,6 @@ class Entry
Entry(const Entry &);
~Entry();
- /*! Returns the static size of the Entry (so excluding any dynamic memory) */
- int getSize();
-
void addSpecialListItem(const char *listName,int index);
/*! Returns the parent for this Entry or 0 if this entry has no parent. */
@@ -208,27 +202,26 @@ class Entry
/*! Returns the list of children for this Entry
* @see addSubEntry() and removeSubEntry()
*/
- //const QList<Entry> *children() const { return m_sublist; }
- const std::vector< std::unique_ptr<Entry> > &children() const { return m_sublist; }
+ const std::vector< std::shared_ptr<Entry> > &children() const { return m_sublist; }
/*! @name add entry as a child and pass ownership.
* @note This makes the entry passed invalid! (TODO: tclscanner.l still has use after move!)
* @{
*/
void moveToSubEntryAndKeep(Entry* e);
- void moveToSubEntryAndKeep(std::unique_ptr<Entry> &e);
+ void moveToSubEntryAndKeep(std::shared_ptr<Entry> &e);
/*! @} */
/*! @name add entry as a child, pass ownership and reinitialize entry */
void moveToSubEntryAndRefresh(Entry* &e);
- void moveToSubEntryAndRefresh(std::unique_ptr<Entry> &e);
+ void moveToSubEntryAndRefresh(std::shared_ptr<Entry> &e);
/*! take \a child of of to list of children and move it into \a moveTo */
- void moveFromSubEntry(const Entry *child,std::unique_ptr<Entry> &moveTo);
+ void moveFromSubEntry(const Entry *child,std::shared_ptr<Entry> &moveTo);
/*! make a copy of \a e and add it as a child to this entry */
void copyToSubEntry (Entry* e);
- void copyToSubEntry (const std::unique_ptr<Entry> &e);
+ void copyToSubEntry (const std::shared_ptr<Entry> &e);
/*! Removes entry \a e from the list of children.
* The entry will be deleted if found.
@@ -244,13 +237,13 @@ class Entry
void setFileDef(FileDef *fd);
FileDef *fileDef() const { return m_fileDef; }
- public:
-
// identification
int section; //!< entry type (see Sections);
QCString type; //!< member type
QCString name; //!< member name
- TagInfo *tagInfo; //!< tag file info
+ bool hasTagInfo; //!< is tag info valid
+ TagInfo tagInfoData; //!< tag file info data
+ const TagInfo *tagInfo() const { return hasTagInfo ? &tagInfoData : 0; }
// content
Protection protection; //!< class protection
@@ -293,13 +286,13 @@ class Entry
int bodyLine; //!< line number of the definition in the source
int endBodyLine; //!< line number where the definition ends
int mGrpId; //!< member group id
- QList<BaseInfo> *extends; //!< list of base classes
- QList<Grouping> *groups; //!< list of groups this entry belongs to
- QList<SectionInfo> *anchors; //!< list of anchors defined in this entry
+ std::vector<BaseInfo> extends; //!< list of base classes
+ std::vector<Grouping> groups; //!< list of groups this entry belongs to
+ std::vector<const SectionInfo*> anchors; //!< list of anchors defined in this entry
QCString fileName; //!< file this entry was extracted from
int startLine; //!< start line of entry in the source
int startColumn; //!< start column of entry in the source
- QList<ListItemInfo> *sli; //!< special lists (test/todo/bug/deprecated/..) this entry is in
+ std::vector<ListItemInfo> sli; //!< special lists (test/todo/bug/deprecated/..) this entry is in
SrcLangExt lang; //!< programming language in which this entry was found
bool hidden; //!< does this represent an entity that is hidden from the output
bool artificial; //!< Artificially introduced item
@@ -339,7 +332,7 @@ class Entry
private:
Entry *m_parent; //!< parent node in the tree
- std::vector< std::unique_ptr<Entry> > m_sublist;
+ std::vector< std::shared_ptr<Entry> > m_sublist;
Entry &operator=(const Entry &);
FileDef *m_fileDef;
};