My Project
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Public Attributes | List of all members
ClassDefImpl Class Reference

Public Member Functions

 ClassDefImpl ()
 
 ~ClassDefImpl ()
 
void init (const char *defFileName, const char *name, const QCString &ctStr, const char *fName)
 

Public Attributes

QCString fileName
 
QCString memberListFileName
 
QCString collabFileName
 
QCString inheritFileName
 
IncludeInfoincInfo
 
BaseClassListinherits
 
BaseClassListinheritedBy
 
NamespaceDefnspace
 
FileDeffileDef
 
MemberNameInfoSDictallMemberNameInfoSDict
 
ArgumentListtempArgs
 
ArgumentListtypeConstraints
 
FileList files
 
ExampleSDictexampleSDict
 
ClassDef::CompoundType compType
 
Protection prot
 
ClassSDictinnerClasses
 
UsesClassDictusesImplClassDict
 
UsesClassDictusedByImplClassDict
 
UsesClassDictusesIntfClassDict
 
ConstraintClassDictconstraintClassDict
 
QDict< ClassDef > * templateInstances
 
QDict< ClassDef > * variableInstances
 
QDict< int > * templBaseClassNames
 
ClassDeftemplateMaster
 
QCString className
 
ClassDefcategoryOf
 
QList< MemberListmemberLists
 
MemberGroupSDictmemberGroupSDict
 
bool isAbstract
 
bool isStatic
 
bool membersMerged
 
bool isLocal
 
bool isTemplArg
 
bool subGrouping
 
bool usedOnly
 
SDict< QCString > vhdlSummaryTitles
 
bool isSimple
 
MemberDefarrowOperator
 
ClassListtaggedInnerClasses
 
ClassDeftagLessRef
 
bool isJavaEnum
 
bool isGeneric
 
bool isAnonymous
 
uint64 spec
 

Detailed Description

Private data associated with a ClassDef object.

Definition at line 51 of file classdef.cpp.

Constructor & Destructor Documentation

ClassDefImpl::ClassDefImpl ( )
ClassDefImpl::~ClassDefImpl ( )

Member Function Documentation

void ClassDefImpl::init ( const char *  defFileName,
const char *  name,
const QCString &  ctStr,
const char *  fName 
)

Definition at line 206 of file classdef.cpp.

References allMemberNameInfoSDict, arrowOperator, categoryOf, Config_getBool, constraintClassDict, exampleSDict, fileDef, fileName, getLanguageFromFileName(), guessSection(), incInfo, inheritedBy, inherits, innerClasses, isAbstract, isAnonymous, isGeneric, isLocal, isSimple, isStatic, isTemplArg, memberGroupSDict, membersMerged, nspace, prot, Public, Entry::SOURCE_SEC, spec, SrcLangExt_Cpp, SrcLangExt_CSharp, SrcLangExt_Java, SrcLangExt_ObjC, stripExtension(), subGrouping, taggedInnerClasses, tagLessRef, tempArgs, templateInstances, templateMaster, templBaseClassNames, typeConstraints, usedByImplClassDict, usedOnly, usesImplClassDict, usesIntfClassDict, and variableInstances.

Referenced by ClassDef::ClassDef().

{
if (fName)
{
}
else
{
fileName=ctStr+name;
}
inherits = 0;
nspace=0;
isAbstract = FALSE;
isStatic = FALSE;
isTemplArg = FALSE;
membersMerged = FALSE;
usedOnly = FALSE;
isSimple = Config_getBool(INLINE_SIMPLE_STRUCTS);
spec=0;
//QCString ns;
//extractNamespaceName(name,className,ns);
//printf("m_name=%s m_className=%s ns=%s\n",m_name.data(),m_className.data(),ns.data());
// we cannot use getLanguage at this point, as setLanguage has not been called.
SrcLangExt lang = getLanguageFromFileName(defFileName);
if ((lang==SrcLangExt_Cpp || lang==SrcLangExt_ObjC) &&
{
isLocal=TRUE;
}
else
{
isLocal=FALSE;
}
isGeneric = (lang==SrcLangExt_CSharp || lang==SrcLangExt_Java) && QCString(name).find('<')!=-1;
isAnonymous = QCString(name).find('@')!=-1;
}

Member Data Documentation

MemberNameInfoSDict* ClassDefImpl::allMemberNameInfoSDict
MemberDef* ClassDefImpl::arrowOperator

Does this class overloaded the -> operator?

Definition at line 191 of file classdef.cpp.

Referenced by init(), ClassDef::internalInsertMember(), and ClassDef::isSmartPointer().

ClassDef* ClassDefImpl::categoryOf

If this class is a Objective-C category, then this points to the class which is extended.

Definition at line 154 of file classdef.cpp.

Referenced by ClassDef::categoryOf(), init(), and ClassDef::setCategoryOf().

QCString ClassDefImpl::className

local class name which could be a typedef'ed alias name.

Definition at line 149 of file classdef.cpp.

Referenced by ClassDef::className(), and ClassDef::setClassName().

QCString ClassDefImpl::collabFileName

file name used for the collaboration diagram

Definition at line 69 of file classdef.cpp.

Referenced by ClassDef::ClassDef(), and ClassDef::collaborationGraphFileName().

ClassDef::CompoundType ClassDefImpl::compType
ConstraintClassDict* ClassDefImpl::constraintClassDict
ExampleSDict* ClassDefImpl::exampleSDict
FileDef* ClassDefImpl::fileDef

File this class is defined in

Definition at line 94 of file classdef.cpp.

Referenced by ClassDef::getFileDef(), init(), and ClassDef::setFileDef().

QCString ClassDefImpl::fileName

file name that forms the base for the output file containing the class documentation. For compatibility with Qt (e.g. links via tag files) this name cannot be derived from the class name directly.

Definition at line 63 of file classdef.cpp.

Referenced by ClassDef::anchor(), ClassDef::ClassDef(), ClassDef::getInstanceOutputFileBase(), ClassDef::getOutputFileBase(), init(), res2cc_cmd.VerbatimFile::writeDirEntry(), res2cc_cmd.CSSFile::writeDirEntry(), res2cc_cmd.LumFile::writeDirEntry(), and res2cc_cmd.LumaFile::writeDirEntry().

FileList ClassDefImpl::files

Files that were used for generating the class documentation.

Definition at line 106 of file classdef.cpp.

Referenced by ClassDef::generatedFromFiles(), ClassDef::insertUsedFile(), ClassDef::showUsedFiles(), and ClassDef::usedFiles().

IncludeInfo* ClassDefImpl::incInfo

Include information about the header file should be included in the documentation. 0 by default, set by setIncludeFile().

Definition at line 77 of file classdef.cpp.

Referenced by ClassDef::includeInfo(), init(), ClassDef::setIncludeFile(), ClassDef::writeIncludeFiles(), and ~ClassDefImpl().

BaseClassList* ClassDefImpl::inheritedBy
QCString ClassDefImpl::inheritFileName

file name used for the inheritance graph

Definition at line 72 of file classdef.cpp.

Referenced by ClassDef::ClassDef(), and ClassDef::inheritanceGraphFileName().

BaseClassList* ClassDefImpl::inherits
ClassSDict* ClassDefImpl::innerClasses
bool ClassDefImpl::isAbstract

Is this an abstact class?

Definition at line 162 of file classdef.cpp.

Referenced by init(), ClassDef::internalInsertMember(), and ClassDef::isAbstract().

bool ClassDefImpl::isAnonymous

Definition at line 201 of file classdef.cpp.

Referenced by init(), ClassDef::isAnonymous(), and ClassDef::setName().

bool ClassDefImpl::isGeneric

Definition at line 199 of file classdef.cpp.

Referenced by init(), and ClassDef::isGeneric().

bool ClassDefImpl::isJavaEnum

Does this class represent a Java style enum?

Definition at line 197 of file classdef.cpp.

Referenced by ClassDef::ClassDef(), and ClassDef::isJavaEnum().

bool ClassDefImpl::isLocal

TRUE if the class is defined in a source file rather than a header file.

Definition at line 171 of file classdef.cpp.

Referenced by init(), ClassDef::isLinkableInProject(), and ClassDef::isLocal().

bool ClassDefImpl::isSimple
bool ClassDefImpl::isStatic

Is the class part of an unnamed namespace?

Definition at line 165 of file classdef.cpp.

Referenced by init(), ClassDef::isLinkableInProject(), ClassDef::isVisibleInHierarchy(), and ClassDef::setIsStatic().

bool ClassDefImpl::isTemplArg
MemberGroupSDict* ClassDefImpl::memberGroupSDict
QCString ClassDefImpl::memberListFileName

file name used for the list of all members

Definition at line 66 of file classdef.cpp.

Referenced by ClassDef::ClassDef(), and ClassDef::getMemberListFileName().

QList<MemberList> ClassDefImpl::memberLists
bool ClassDefImpl::membersMerged

TRUE if classes members are merged with those of the base classes.

Definition at line 168 of file classdef.cpp.

Referenced by init(), and ClassDef::mergeMembers().

NamespaceDef* ClassDefImpl::nspace

Namespace this class is part of (this is the inner most namespace in case of nested namespaces)

Definition at line 91 of file classdef.cpp.

Referenced by ClassDef::getNamespaceDef(), init(), and ClassDef::setNamespace().

Protection ClassDefImpl::prot

The protection level in which this class was found. Typically Public, but for nested classes this can also be Protected or Private.

Definition at line 118 of file classdef.cpp.

Referenced by init(), ClassDef::isLinkableInProject(), ClassDef::isVisibleInHierarchy(), ClassDef::protection(), and ClassDef::setProtection().

uint64 ClassDefImpl::spec
bool ClassDefImpl::subGrouping

Does this class group its user-grouped members as a sub-section of the normal (public/protected/..) groups?

Definition at line 179 of file classdef.cpp.

Referenced by ClassDef::addGroupedInheritedMembers(), ClassDef::addMembersToMemberGroup(), ClassDef::countMembersIncludingGrouped(), init(), ClassDef::setSubGrouping(), ClassDef::subGrouping(), and ClassDef::writeMemberGroups().

ClassList* ClassDefImpl::taggedInnerClasses
ClassDef* ClassDefImpl::tagLessRef

Definition at line 194 of file classdef.cpp.

Referenced by init(), ClassDef::setTagLessReference(), and ClassDef::tagLessReference().

ArgumentList* ClassDefImpl::tempArgs
QDict<ClassDef>* ClassDefImpl::templateInstances

Template instances that exists of this class, the key in the dictionary is the template argument list.

Definition at line 135 of file classdef.cpp.

Referenced by ClassDef::getTemplateInstances(), init(), ClassDef::insertTemplateInstance(), ClassDef::insertUsedFile(), and ~ClassDefImpl().

ClassDef* ClassDefImpl::templateMaster
QDict<int>* ClassDefImpl::templBaseClassNames
ArgumentList* ClassDefImpl::typeConstraints

Type constraints for template parameters

Definition at line 103 of file classdef.cpp.

Referenced by init(), ClassDef::setTypeConstraints(), ClassDef::typeConstraints(), ClassDef::writeDetailedDocumentationBody(), and ~ClassDefImpl().

UsesClassDict* ClassDefImpl::usedByImplClassDict
bool ClassDefImpl::usedOnly

Reason of existence is a "use" relation

Definition at line 182 of file classdef.cpp.

Referenced by init(), ClassDef::isUsedOnly(), and ClassDef::setUsedOnly().

UsesClassDict* ClassDefImpl::usesImplClassDict
UsesClassDict* ClassDefImpl::usesIntfClassDict

Definition at line 128 of file classdef.cpp.

Referenced by init(), ClassDef::usedInterfaceClasses(), and ~ClassDefImpl().

QDict<ClassDef>* ClassDefImpl::variableInstances

Template instances that exists of this class, as defined by variables. We do NOT want to document these individually. The key in the dictionary is the template argument list.

Definition at line 141 of file classdef.cpp.

Referenced by ClassDef::getVariableInstance(), init(), and ~ClassDefImpl().

SDict<QCString> ClassDefImpl::vhdlSummaryTitles

List of titles to use for the summary

Definition at line 185 of file classdef.cpp.

Referenced by ClassDefImpl(), ClassDef::internalInsertMember(), and ClassDef::writeSummaryLinks().


The documentation for this class was generated from the following file: