File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / expat / lib / xmlrole.h
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue Feb 21 23:00:54 2012 UTC (12 years, 5 months ago) by misho
Branches: expat, MAIN
CVS tags: v2_1_0, v2_0_1p0, v2_0_1, HEAD
expat

    1: /* Copyright (c) 1998, 1999 Thai Open Source Software Center Ltd
    2:    See the file COPYING for copying permission.
    3: */
    4: 
    5: #ifndef XmlRole_INCLUDED
    6: #define XmlRole_INCLUDED 1
    7: 
    8: #ifdef __VMS
    9: /*      0        1         2         3      0        1         2         3
   10:         1234567890123456789012345678901     1234567890123456789012345678901 */
   11: #define XmlPrologStateInitExternalEntity    XmlPrologStateInitExternalEnt
   12: #endif
   13: 
   14: #include "xmltok.h"
   15: 
   16: #ifdef __cplusplus
   17: extern "C" {
   18: #endif
   19: 
   20: enum {
   21:   XML_ROLE_ERROR = -1,
   22:   XML_ROLE_NONE = 0,
   23:   XML_ROLE_XML_DECL,
   24:   XML_ROLE_INSTANCE_START,
   25:   XML_ROLE_DOCTYPE_NONE,
   26:   XML_ROLE_DOCTYPE_NAME,
   27:   XML_ROLE_DOCTYPE_SYSTEM_ID,
   28:   XML_ROLE_DOCTYPE_PUBLIC_ID,
   29:   XML_ROLE_DOCTYPE_INTERNAL_SUBSET,
   30:   XML_ROLE_DOCTYPE_CLOSE,
   31:   XML_ROLE_GENERAL_ENTITY_NAME,
   32:   XML_ROLE_PARAM_ENTITY_NAME,
   33:   XML_ROLE_ENTITY_NONE,
   34:   XML_ROLE_ENTITY_VALUE,
   35:   XML_ROLE_ENTITY_SYSTEM_ID,
   36:   XML_ROLE_ENTITY_PUBLIC_ID,
   37:   XML_ROLE_ENTITY_COMPLETE,
   38:   XML_ROLE_ENTITY_NOTATION_NAME,
   39:   XML_ROLE_NOTATION_NONE,
   40:   XML_ROLE_NOTATION_NAME,
   41:   XML_ROLE_NOTATION_SYSTEM_ID,
   42:   XML_ROLE_NOTATION_NO_SYSTEM_ID,
   43:   XML_ROLE_NOTATION_PUBLIC_ID,
   44:   XML_ROLE_ATTRIBUTE_NAME,
   45:   XML_ROLE_ATTRIBUTE_TYPE_CDATA,
   46:   XML_ROLE_ATTRIBUTE_TYPE_ID,
   47:   XML_ROLE_ATTRIBUTE_TYPE_IDREF,
   48:   XML_ROLE_ATTRIBUTE_TYPE_IDREFS,
   49:   XML_ROLE_ATTRIBUTE_TYPE_ENTITY,
   50:   XML_ROLE_ATTRIBUTE_TYPE_ENTITIES,
   51:   XML_ROLE_ATTRIBUTE_TYPE_NMTOKEN,
   52:   XML_ROLE_ATTRIBUTE_TYPE_NMTOKENS,
   53:   XML_ROLE_ATTRIBUTE_ENUM_VALUE,
   54:   XML_ROLE_ATTRIBUTE_NOTATION_VALUE,
   55:   XML_ROLE_ATTLIST_NONE,
   56:   XML_ROLE_ATTLIST_ELEMENT_NAME,
   57:   XML_ROLE_IMPLIED_ATTRIBUTE_VALUE,
   58:   XML_ROLE_REQUIRED_ATTRIBUTE_VALUE,
   59:   XML_ROLE_DEFAULT_ATTRIBUTE_VALUE,
   60:   XML_ROLE_FIXED_ATTRIBUTE_VALUE,
   61:   XML_ROLE_ELEMENT_NONE,
   62:   XML_ROLE_ELEMENT_NAME,
   63:   XML_ROLE_CONTENT_ANY,
   64:   XML_ROLE_CONTENT_EMPTY,
   65:   XML_ROLE_CONTENT_PCDATA,
   66:   XML_ROLE_GROUP_OPEN,
   67:   XML_ROLE_GROUP_CLOSE,
   68:   XML_ROLE_GROUP_CLOSE_REP,
   69:   XML_ROLE_GROUP_CLOSE_OPT,
   70:   XML_ROLE_GROUP_CLOSE_PLUS,
   71:   XML_ROLE_GROUP_CHOICE,
   72:   XML_ROLE_GROUP_SEQUENCE,
   73:   XML_ROLE_CONTENT_ELEMENT,
   74:   XML_ROLE_CONTENT_ELEMENT_REP,
   75:   XML_ROLE_CONTENT_ELEMENT_OPT,
   76:   XML_ROLE_CONTENT_ELEMENT_PLUS,
   77:   XML_ROLE_PI,
   78:   XML_ROLE_COMMENT,
   79: #ifdef XML_DTD
   80:   XML_ROLE_TEXT_DECL,
   81:   XML_ROLE_IGNORE_SECT,
   82:   XML_ROLE_INNER_PARAM_ENTITY_REF,
   83: #endif /* XML_DTD */
   84:   XML_ROLE_PARAM_ENTITY_REF
   85: };
   86: 
   87: typedef struct prolog_state {
   88:   int (PTRCALL *handler) (struct prolog_state *state,
   89:                           int tok,
   90:                           const char *ptr,
   91:                           const char *end,
   92:                           const ENCODING *enc);
   93:   unsigned level;
   94:   int role_none;
   95: #ifdef XML_DTD
   96:   unsigned includeLevel;
   97:   int documentEntity;
   98:   int inEntityValue;
   99: #endif /* XML_DTD */
  100: } PROLOG_STATE;
  101: 
  102: void XmlPrologStateInit(PROLOG_STATE *);
  103: #ifdef XML_DTD
  104: void XmlPrologStateInitExternalEntity(PROLOG_STATE *);
  105: #endif /* XML_DTD */
  106: 
  107: #define XmlTokenRole(state, tok, ptr, end, enc) \
  108:  (((state)->handler)(state, tok, ptr, end, enc))
  109: 
  110: #ifdef __cplusplus
  111: }
  112: #endif
  113: 
  114: #endif /* not XmlRole_INCLUDED */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>