/****************************************************************************** * * * * Copyright (C) 1997-2007 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 #include 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 { public: DefineList() : QList() {} ~DefineList() {} int compareItems(GCI i1,GCI i2) { return stricmp(((Define *)i1)->name,((Define *)i2)->name); } }; class DefineName : public QList { public: DefineName(const char *n) : QList() { 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 { public: DefineNameList() : QList() {} ~DefineNameList() {} int compareItems(GCI i1,GCI i2) { return stricmp(((DefineName *)i1)->nameString(), ((DefineName *)i2)->nameString()); } }; typedef QDict DefineDict; typedef QDict DefineNameDict; #endif