Blame src/cmdmapper.h

Packit 1c1d7e
/******************************************************************************
Packit 1c1d7e
 *
Packit 1c1d7e
 * 
Packit 1c1d7e
 *
Packit 1c1d7e
 *
Packit 1c1d7e
 * Copyright (C) 1997-2015 by Dimitri van Heesch.
Packit 1c1d7e
 *
Packit 1c1d7e
 * Permission to use, copy, modify, and distribute this software and its
Packit 1c1d7e
 * documentation under the terms of the GNU General Public License is hereby 
Packit 1c1d7e
 * granted. No representations are made about the suitability of this software 
Packit 1c1d7e
 * for any purpose. It is provided "as is" without express or implied warranty.
Packit 1c1d7e
 * See the GNU General Public License for more details.
Packit 1c1d7e
 *
Packit 1c1d7e
 * Documents produced by Doxygen are derivative works derived from the
Packit 1c1d7e
 * input used in their production; they are not affected by this license.
Packit 1c1d7e
 *
Packit 1c1d7e
 */
Packit 1c1d7e
Packit 1c1d7e
#ifndef _CMDMAPPER_H
Packit 1c1d7e
#define _CMDMAPPER_H
Packit 1c1d7e
Packit 1c1d7e
#include <qdict.h>
Packit 1c1d7e
Packit 1c1d7e
struct CommandMap;
Packit 1c1d7e
Packit 1c1d7e
const int SIMPLESECT_BIT = 0x1000;
Packit 1c1d7e
Packit 1c1d7e
enum CommandType
Packit 1c1d7e
{
Packit 1c1d7e
  CMD_UNKNOWN      = 0,
Packit 1c1d7e
  CMD_ADDINDEX     = 1,   
Packit 1c1d7e
  CMD_AMP          = 2,
Packit 1c1d7e
  CMD_ANCHOR       = 3,  
Packit 1c1d7e
  CMD_AT           = 4,
Packit 1c1d7e
  CMD_ATTENTION    = 5  | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_AUTHOR       = 6  | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_AUTHORS      = 7  | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_BOLD         = 8,
Packit 1c1d7e
  CMD_BSLASH       = 9,
Packit 1c1d7e
  CMD_CODE         = 10,
Packit 1c1d7e
  CMD_COPYDOC      = 11,      
Packit 1c1d7e
  CMD_DATE         = 12 | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_DOLLAR       = 13,
Packit 1c1d7e
  CMD_DONTINCLUDE  = 14,   
Packit 1c1d7e
  CMD_DOTFILE      = 15,      
Packit 1c1d7e
  CMD_EMPHASIS     = 16,
Packit 1c1d7e
  CMD_ENDCODE      = 17,      
Packit 1c1d7e
  CMD_ENDHTMLONLY  = 18,  
Packit 1c1d7e
  CMD_ENDLATEXONLY = 19, 
Packit 1c1d7e
  CMD_ENDLINK      = 20,      
Packit 1c1d7e
  CMD_ENDSECREFLIST= 21,
Packit 1c1d7e
  CMD_ENDVERBATIM  = 22, 
Packit 1c1d7e
  CMD_ENDXMLONLY   = 23,
Packit 1c1d7e
  CMD_EXCEPTION    = 24 | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_FORMULA      = 25,
Packit 1c1d7e
  CMD_GREATER      = 26,
Packit 1c1d7e
  CMD_HASH         = 27,
Packit 1c1d7e
  CMD_HTMLINCLUDE  = 28,
Packit 1c1d7e
  CMD_HTMLONLY     = 29,
Packit 1c1d7e
  CMD_IMAGE        = 30,           
Packit 1c1d7e
  CMD_INCLUDE      = 31,
Packit 1c1d7e
  CMD_INTERNAL     = 32,         
Packit 1c1d7e
  CMD_INTERNALREF  = 33,
Packit 1c1d7e
  CMD_INVARIANT    = 34 | SIMPLESECT_BIT ,
Packit 1c1d7e
  CMD_LATEXONLY    = 35,
Packit 1c1d7e
  CMD_LESS         = 36,
Packit 1c1d7e
  CMD_LI           = 37,
Packit 1c1d7e
  CMD_LINE         = 38,
Packit 1c1d7e
  CMD_LINEBREAK    = 39,
Packit 1c1d7e
  CMD_LINK         = 40,             
Packit 1c1d7e
  CMD_NOTE         = 41 | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_PAR          = 42 | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_PARAM        = 43 | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_PERCENT      = 44, 
Packit 1c1d7e
  CMD_POST         = 45 | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_PRE          = 46 | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_REF          = 47,
Packit 1c1d7e
  CMD_SECREFITEM   = 48,
Packit 1c1d7e
  CMD_REMARK       = 49 | SIMPLESECT_BIT ,
Packit 1c1d7e
  CMD_RETURN       = 50 | SIMPLESECT_BIT ,
Packit 1c1d7e
  CMD_RETVAL       = 51 | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_SA           = 52 | SIMPLESECT_BIT ,
Packit 1c1d7e
  CMD_SECREFLIST   = 53,
Packit 1c1d7e
  CMD_SECTION      = 54,
Packit 1c1d7e
  CMD_SUBPAGE      = 55,
Packit 1c1d7e
  CMD_SUBSECTION   = 56,
Packit 1c1d7e
  CMD_SUBSUBSECTION= 57,
Packit 1c1d7e
  CMD_PARAGRAPH    = 58,
Packit 1c1d7e
  CMD_SINCE        = 59 | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_SKIP         = 60,
Packit 1c1d7e
  CMD_SKIPLINE     = 61,
Packit 1c1d7e
  CMD_STARTCODE    = 62,
Packit 1c1d7e
  CMD_JAVALINK     = 63,
Packit 1c1d7e
  CMD_UNTIL        = 64,
Packit 1c1d7e
  CMD_VERBATIM     = 65,
Packit 1c1d7e
  CMD_VERBINCLUDE  = 66,
Packit 1c1d7e
  CMD_VERSION      = 67 | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_WARNING      = 68 | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_XREFITEM     = 69 | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_XMLONLY      = 70,
Packit 1c1d7e
  CMD_DOT          = 71,
Packit 1c1d7e
  CMD_ENDDOT       = 72,
Packit 1c1d7e
  CMD_MSC          = 73,
Packit 1c1d7e
  CMD_ENDMSC       = 74,
Packit 1c1d7e
  CMD_MANONLY      = 75,
Packit 1c1d7e
  CMD_ENDMANONLY   = 76,
Packit 1c1d7e
  CMD_INCWITHLINES = 77,
Packit 1c1d7e
  CMD_INHERITDOC   = 78,
Packit 1c1d7e
  CMD_TPARAM       = 79 | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_COPYBRIEF    = 80,
Packit 1c1d7e
  CMD_COPYDETAILS  = 81,
Packit 1c1d7e
  CMD_QUOTE        = 82,
Packit 1c1d7e
  CMD_MSCFILE      = 83,
Packit 1c1d7e
  CMD_DCOLON       = 84,
Packit 1c1d7e
  CMD_COPYRIGHT    = 85 | SIMPLESECT_BIT,
Packit 1c1d7e
  CMD_CITE         = 86,
Packit 1c1d7e
  CMD_SNIPPET      = 87,
Packit 1c1d7e
  CMD_RTFONLY      = 88, 
Packit 1c1d7e
  CMD_ENDRTFONLY   = 89,
Packit 1c1d7e
  CMD_PIPE         = 90,
Packit 1c1d7e
  CMD_VHDLFLOW     = 91,
Packit 1c1d7e
  CMD_DBONLY       = 92,
Packit 1c1d7e
  CMD_ENDDBONLY    = 93,
Packit 1c1d7e
  CMD_ENDINTERNAL  = 94,
Packit 1c1d7e
  CMD_PARBLOCK     = 95,
Packit 1c1d7e
  CMD_ENDPARBLOCK  = 96,
Packit 1c1d7e
  CMD_DIAFILE      = 97,
Packit 1c1d7e
  CMD_LATEXINCLUDE = 98,
Packit 1c1d7e
  CMD_NDASH        = 99,
Packit 1c1d7e
  CMD_MDASH        = 100,
Packit 1c1d7e
  CMD_STARTUML     = 101,
Packit 1c1d7e
  CMD_ENDUML       = 102,
Packit 1c1d7e
  CMD_SETSCOPE     = 103,
Packit 1c1d7e
  CMD_PUNT         = 104,
Packit 1c1d7e
  CMD_PLUS         = 105,
Packit 1c1d7e
  CMD_MINUS        = 106,
Packit 1c1d7e
  CMD_INCLUDEDOC   = 107,
Packit 1c1d7e
  CMD_SNIPPETDOC   = 108,
Packit 1c1d7e
  CMD_SNIPWITHLINES= 109
Packit 1c1d7e
};
Packit 1c1d7e
Packit 1c1d7e
enum HtmlTagType
Packit 1c1d7e
{
Packit 1c1d7e
  HTML_UNKNOWN   = 0,
Packit 1c1d7e
  HTML_CENTER    = 1,
Packit 1c1d7e
  HTML_TABLE     = 2,
Packit 1c1d7e
  HTML_CAPTION   = 3,
Packit 1c1d7e
  HTML_SMALL     = 4,
Packit 1c1d7e
  HTML_CODE      = 5,
Packit 1c1d7e
  HTML_IMG       = 6,
Packit 1c1d7e
  HTML_PRE       = 7,
Packit 1c1d7e
  HTML_SUB       = 8,
Packit 1c1d7e
  HTML_SUP       = 9,
Packit 1c1d7e
  HTML_TR        = 10,
Packit 1c1d7e
  HTML_TD        = 11,
Packit 1c1d7e
  HTML_TH        = 12,
Packit 1c1d7e
  HTML_OL        = 13,
Packit 1c1d7e
  HTML_UL        = 14,
Packit 1c1d7e
  HTML_LI        = 15,
Packit 1c1d7e
  HTML_EMPHASIS  = 16,
Packit 1c1d7e
  HTML_HR        = 17,
Packit 1c1d7e
  HTML_DL        = 18,
Packit 1c1d7e
  HTML_DT        = 19,
Packit 1c1d7e
  HTML_DD        = 20,
Packit 1c1d7e
  HTML_BR        = 21,
Packit 1c1d7e
  HTML_A         = 22,
Packit 1c1d7e
  HTML_BOLD      = 23,
Packit 1c1d7e
  HTML_P         = 24,
Packit 1c1d7e
  HTML_H1        = 25,
Packit 1c1d7e
  HTML_H2        = 26,
Packit 1c1d7e
  HTML_H3        = 27,
Packit 1c1d7e
  HTML_H4        = 28,
Packit 1c1d7e
  HTML_H5        = 29,
Packit 1c1d7e
  HTML_H6        = 30,
Packit 1c1d7e
  HTML_SPAN      = 31,
Packit 1c1d7e
  HTML_DIV       = 32,
Packit 1c1d7e
  HTML_BLOCKQUOTE= 33,
Packit 1c1d7e
Packit 1c1d7e
  XML_CmdMask    = 0x100,
Packit 1c1d7e
Packit 1c1d7e
  XML_C            = XML_CmdMask + 0,
Packit 1c1d7e
  XML_CODE         = XML_CmdMask + 1,
Packit 1c1d7e
  XML_DESCRIPTION  = XML_CmdMask + 2,
Packit 1c1d7e
  XML_EXAMPLE      = XML_CmdMask + 3,
Packit 1c1d7e
  XML_EXCEPTION    = XML_CmdMask + 4,
Packit 1c1d7e
  XML_INCLUDE      = XML_CmdMask + 5,
Packit 1c1d7e
  XML_ITEM         = XML_CmdMask + 6,
Packit 1c1d7e
  XML_LIST         = XML_CmdMask + 7,
Packit 1c1d7e
  XML_LISTHEADER   = XML_CmdMask + 8,
Packit 1c1d7e
  XML_PARA         = XML_CmdMask + 9,
Packit 1c1d7e
  XML_PARAM        = XML_CmdMask + 10,
Packit 1c1d7e
  XML_PARAMREF     = XML_CmdMask + 11,
Packit 1c1d7e
  XML_PERMISSION   = XML_CmdMask + 12,
Packit 1c1d7e
  XML_REMARKS      = XML_CmdMask + 13,
Packit 1c1d7e
  XML_RETURNS      = XML_CmdMask + 14,
Packit 1c1d7e
  XML_SEE          = XML_CmdMask + 15,
Packit 1c1d7e
  XML_SEEALSO      = XML_CmdMask + 16,
Packit 1c1d7e
  XML_SUMMARY      = XML_CmdMask + 17,
Packit 1c1d7e
  XML_TERM         = XML_CmdMask + 18,
Packit 1c1d7e
  XML_TYPEPARAM    = XML_CmdMask + 19,
Packit 1c1d7e
  XML_TYPEPARAMREF = XML_CmdMask + 20,
Packit 1c1d7e
  XML_VALUE        = XML_CmdMask + 21,
Packit 1c1d7e
  XML_INHERITDOC   = XML_CmdMask + 22
Packit 1c1d7e
};
Packit 1c1d7e
Packit 1c1d7e
/** Class representing a mapping from command names to command IDs. */
Packit 1c1d7e
class Mapper
Packit 1c1d7e
{
Packit 1c1d7e
  public:
Packit 1c1d7e
    int map(const char *n);
Packit 1c1d7e
    QString find(const int n);
Packit 1c1d7e
    Mapper(const CommandMap *cm,bool caseSensitive);
Packit 1c1d7e
  private:
Packit 1c1d7e
    QDict<int> m_map;
Packit 1c1d7e
    bool m_cs;
Packit 1c1d7e
};
Packit 1c1d7e
Packit 1c1d7e
/** Class representing a namespace for the doxygen and HTML command mappers. */
Packit 1c1d7e
struct Mappers
Packit 1c1d7e
{
Packit 1c1d7e
  static void freeMappers();
Packit 1c1d7e
  static Mapper *cmdMapper;
Packit 1c1d7e
  static Mapper *htmlTagMapper;
Packit 1c1d7e
};
Packit 1c1d7e
Packit 1c1d7e
Packit 1c1d7e
#endif