1 /******************************************************************************
3 * $Id: membername.h,v 1.17 2001/03/19 19:27:41 root Exp $
5 * Copyright (C) 1997-2012 by Dimitri van Heesch.
7 * Permission to use, copy, modify, and distribute this software and its
8 * documentation under the terms of the GNU General Public License is hereby
9 * granted. No representations are made about the suitability of this software
10 * for any purpose. It is provided "as is" without express or implied warranty.
11 * See the GNU General Public License for more details.
13 * Documents produced by Doxygen are derivative works derived from the
14 * input used in their production; they are not affected by this license.
22 #include "memberdef.h"
25 /** Class representing all MemberDef objects with the same name */
26 class MemberName : public QList<MemberDef>
29 MemberName(const char *name);
31 const char *memberName() const { return name; }
33 int compareItems(GCI item1,GCI item2);
38 /** Iterator for MemberDef objects in a MemberName list. */
39 class MemberNameIterator : public QListIterator<MemberDef>
42 MemberNameIterator( const MemberName &list);
45 /** Sorted dictionary of MemberName objects. */
46 class MemberNameSDict : public SDict<MemberName>
49 MemberNameSDict(int size) : SDict<MemberName>(size) {}
52 int compareItems(GCI item1,GCI item2);
55 /** Data associated with a MemberDef in an inheritance relation. */
58 MemberInfo(MemberDef *md,Protection p,Specifier v,bool inh) :
59 memberDef(md), prot(p), virt(v), inherited(inh), ambigClass(0) {}
66 QCString ambiguityResolutionScope;
70 /** Class representing all MemberInfo objects with the same name */
71 class MemberNameInfo : public QList<MemberInfo>
74 MemberNameInfo(const char *name);
76 const char *memberName() const { return name; }
77 int compareItems(GCI item1,GCI item2);
82 /** Iterator for MemberInfo objects in a MemberNameInfo list. */
83 class MemberNameInfoIterator : public QListIterator<MemberInfo>
86 MemberNameInfoIterator(const MemberNameInfo &mnii)
87 : QListIterator<MemberInfo>(mnii) {}
90 /** Sorted dictionary of MemberNameInfo objects. */
91 class MemberNameInfoSDict : public SDict<MemberNameInfo>
94 MemberNameInfoSDict(int size) : SDict<MemberNameInfo>(size) {}
95 ~MemberNameInfoSDict() {}
96 int compareItems(GCI item1,GCI item2)
98 ((MemberNameInfo *)item1)->memberName(),
99 ((MemberNameInfo *)item2)->memberName()