diff options
Diffstat (limited to 'trunk/src/define.h')
-rw-r--r-- | trunk/src/define.h | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/trunk/src/define.h b/trunk/src/define.h new file mode 100644 index 0000000..b5e4f6e --- /dev/null +++ b/trunk/src/define.h @@ -0,0 +1,91 @@ +/****************************************************************************** + * + * + * + * Copyright (C) 1997-2012 by Dimitri van Heesch. + * + * Permission to use, copy, modify, and distribute this software and its + * documentation under the terms of the GNU General Public License is hereby + * granted. No representations are made about the suitability of this software + * for any purpose. It is provided "as is" without express or implied warranty. + * See the GNU General Public License for more details. + * + * Documents produced by Doxygen are derivative works derived from the + * input used in their production; they are not affected by this license. + * + */ + +#ifndef DEFINE_H +#define DEFINE_H + +#include "qtbc.h" +#include <qdict.h> +#include <qlist.h> + +class FileDef; + +class Define +{ + public: + Define(); + Define(const Define &d); + ~Define(); + bool hasDocumentation(); + QCString name; + QCString definition; + QCString fileName; + QCString doc; + QCString brief; + QCString args; + QCString anchor; + FileDef *fileDef; + int lineNr; + int nargs; + bool undef; + bool varArgs; + bool isPredefined; + bool nonRecursive; +}; + +class DefineList : public QList<Define> +{ + public: + DefineList() : QList<Define>() {} + ~DefineList() {} + int compareItems(GCI i1,GCI i2) + { + return stricmp(((Define *)i1)->name,((Define *)i2)->name); + } +}; + +class DefineName : public QList<Define> +{ + public: + DefineName(const char *n) : QList<Define>() { name=n; } + ~DefineName() {} + const char *nameString() const { return name; } + int compareItems(GCI i1,GCI i2) + { + return stricmp(((Define *)i1)->name,((Define *)i2)->name); + } + + private: + QCString name; +}; + +class DefineNameList : public QList<DefineName> +{ + public: + DefineNameList() : QList<DefineName>() {} + ~DefineNameList() {} + int compareItems(GCI i1,GCI i2) + { + return stricmp(((DefineName *)i1)->nameString(), + ((DefineName *)i2)->nameString()); + } +}; + +typedef QDict<Define> DefineDict; +typedef QDict<DefineName> DefineNameDict; + +#endif |