PageRenderTime 464ms CodeModel.GetById 201ms app.highlight 6ms RepoModel.GetById 175ms app.codeStats 1ms

/Modules/expat/xmlrole.h

http://unladen-swallow.googlecode.com/
C++ Header | 114 lines | 99 code | 10 blank | 5 comment | 0 complexity | 2852e0b528ad89e0152ff7b63153f00f MD5 | raw file
  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
 17extern "C" {
 18#endif
 19
 20enum {
 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
 87typedef 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
102void XmlPrologStateInit(PROLOG_STATE *);
103#ifdef XML_DTD
104void 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 */