My Project
Main Page
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
membername.h
Go to the documentation of this file.
1
/******************************************************************************
2
*
3
*
4
*
5
* Copyright (C) 1997-2015 by Dimitri van Heesch.
6
*
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.
12
*
13
* Documents produced by Doxygen are derivative works derived from the
14
* input used in their production; they are not affected by this license.
15
*
16
*/
17
18
#ifndef MEMBERNAME_H
19
#define MEMBERNAME_H
20
21
#include <qlist.h>
22
#include "
memberdef.h
"
23
#include "
sortdict.h
"
24
26
class
MemberName
:
public
QList<MemberDef>
27
{
28
public
:
29
MemberName
(
const
char
*
name
);
30
~MemberName
();
31
const
char
*
memberName
()
const
{
return
name
; }
32
33
private
:
34
int
compareValues
(
const
MemberDef
*item1,
const
MemberDef
*item2)
const
;
35
QCString
name
;
36
};
37
39
class
MemberNameIterator
:
public
QListIterator<MemberDef>
40
{
41
public
:
42
MemberNameIterator
(
const
MemberName
&list);
43
};
44
46
class
MemberNameSDict
:
public
SDict
<MemberName>
47
{
48
public
:
49
MemberNameSDict
(
int
size) :
SDict
<
MemberName
>(size) {}
50
~MemberNameSDict
() {}
51
52
private
:
53
int
compareValues
(
const
MemberName
*item1,
const
MemberName
*item2)
const
;
54
};
55
57
struct
MemberInfo
58
{
59
MemberInfo
(
MemberDef
*md,
Protection
p,
Specifier
v,
bool
inh) :
60
memberDef
(md),
prot
(p),
virt
(v),
inherited
(inh),
ambigClass
(0) {}
61
~MemberInfo
() {}
62
MemberDef
*
memberDef
;
63
Protection
prot
;
64
Specifier
virt
;
65
bool
inherited
;
66
QCString
scopePath
;
67
QCString
ambiguityResolutionScope
;
68
ClassDef
*
ambigClass
;
69
};
70
72
class
MemberNameInfo
:
public
QList<MemberInfo>
73
{
74
public
:
75
MemberNameInfo
(
const
char
*
name
);
76
~MemberNameInfo
() {}
77
const
char
*
memberName
()
const
{
return
name
; }
78
private
:
79
int
compareValues
(
const
MemberInfo
*item1,
const
MemberInfo
*item2)
const
;
80
QCString
name
;
81
};
82
84
class
MemberNameInfoIterator
:
public
QListIterator<MemberInfo>
85
{
86
public
:
87
MemberNameInfoIterator
(
const
MemberNameInfo
&mnii)
88
: QListIterator<
MemberInfo
>(mnii) {}
89
};
90
92
class
MemberNameInfoSDict
:
public
SDict
<MemberNameInfo>
93
{
94
public
:
95
MemberNameInfoSDict
(
int
size) :
SDict
<
MemberNameInfo
>(size) {}
96
~MemberNameInfoSDict
() {}
97
private
:
98
int
compareValues
(
const
MemberNameInfo
*item1,
const
MemberNameInfo
*item2)
const
99
{
100
return
qstricmp(item1->
memberName
(), item2->
memberName
());
101
}
102
};
103
104
#endif