home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1994 March / Internet Info CD-ROM (Walnut Creek) (March 1994).iso / standards / sgml / nist / incs / detglbl.h < prev    next >
Encoding:
C/C++ Source or Header  |  1990-09-13  |  5.2 KB  |  143 lines

  1. /* National Institute of Standards and Technology (NIST)
  2. /* National Computer System Laboratory (NCSL)
  3. /* Office Systems Engineering (OSE) Group
  4. /* ********************************************************************
  5. /*                            D I S C L A I M E R
  6. /*                              (March 8, 1989)
  7. /*  
  8. /* There is no warranty for the NIST NCSL OSE SGML parser and/or the NIST
  9. /* NCSL OSE SGML parser validation suite.  If the SGML parser and/or
  10. /* validation suite is modified by someone else and passed on, NIST wants
  11. /* the parser's recipients to know that what they have is not what NIST
  12. /* distributed, so that any problems introduced by others will not
  13. /* reflect on our reputation.
  14. /* 
  15. /* Policies
  16. /* 
  17. /* 1. Anyone may copy and distribute verbatim copies of the SGML source
  18. /* code as received in any medium.
  19. /* 
  20. /* 2. Anyone may modify your copy or copies of SGML parser source code or
  21. /* any portion of it, and copy and distribute such modifications provided
  22. /* that all modifications are clearly associated with the entity that
  23. /* performs the modifications.
  24. /* 
  25. /* NO WARRANTY
  26. /* ===========
  27. /* 
  28. /* NIST PROVIDES ABSOLUTELY NO WARRANTY.  THE SGML PARSER AND VALIDATION
  29. /* SUITE ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
  30. /* EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  31. /* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  32. /* THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS
  33. /* WITH YOU.  SHOULD THE SGML PARSER OR VALIDATION SUITE PROVE DEFECTIVE,
  34. /* YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
  35. /* 
  36. /* IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW WILL NIST BE LIABLE FOR
  37. /* DAMAGES, INCLUDING ANY LOST PROFITS, LOST MONIES, OR OTHER SPECIAL,
  38. /* INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
  39. /* INABILITY TO USE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
  40. /* BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY THIRD PARTIES OR A
  41. /* FAILURE OF THE PROGRAM TO OPERATE WITH PROGRAMS NOT DISTRIBUTED BY
  42. /* NIST) THE PROGRAM, EVEN IF YOU HAVE BEEN ADVISED OF THE POSSIBILITY OF
  43. /* SUCH DAMAGES, OR FOR ANY CLAIM BY ANY OTHER PARTY.
  44. */
  45.  
  46. /************************************************************************/
  47. /*   TITLE:          SGML PARSER                                        */
  48. /*   SYSTEM:         DTD PROCESSOR                                      */
  49. /*   SUBSYSTEM:                                                         */
  50. /*   SOURCE FILE:    DETGLBL.H                                          */
  51. /*   AUTHOR:         Michael Garris                                     */
  52. /*                                                                      */
  53. /*   DATE CREATED:                                                      */
  54. /*   LAST MODIFIED:                                                     */
  55. /*                                                                      */
  56. /*                  REVISIONS                                           */
  57. /*   WHEN      WHO            WHY                                       */
  58. /************************************************************************/
  59.  
  60. #define  BUFFSIZE  (400)
  61. #define  NAMELEN   (8)
  62.  
  63. #define  POINTER   (-1)
  64.  
  65. #define  GRPO      0x00
  66. #define  GRPC      0x01
  67. #define  AND       0x02
  68. #define  OR        0x03
  69. #define  SEQ       0x04
  70. #define  OPT       0x05
  71. #define  PLUS      0x06
  72. #define  REP       0x07
  73. #define  REQ       0x08
  74.  
  75. #define  EMPTY     (-1)
  76. #define  BACK      (-2)
  77. #define  INT        0
  78. #define  PTR        1
  79. #define  START      0
  80. #define  CONNECTOR  1
  81.  
  82. #define  TRUE        1
  83. #define  FALSE       0
  84.  
  85. extern int debug,ambmodel;
  86. extern ITEM *startbuf,*endbuf;
  87. extern TABLE symtable[BUFFSIZE];
  88. extern char reducedexpr[BUFFSIZE];
  89. extern int index;
  90. extern ITEM tokseen[BUFFSIZE],buffer[BUFFSIZE];
  91. extern int symtabindx;
  92. extern MEMNODE *head;
  93.  
  94. /* DETERMIN.C */ 
  95. /*global*/  int main();
  96. /*global*/  int determin();
  97. /*global*/  struct STATEID *proclowgrp();
  98. /*global*/  void tokensingrp();
  99. /*global*/  struct STATEID *FSAtoken();
  100. /*global*/  void lowgrp();
  101. /*global*/  struct STATEID *getFSAtoken();
  102. /*global*/  struct STATEID *FSAgrp();
  103. /*global*/  struct STATEID *FSAgrpocid();
  104. /* DETUTIL.C */ 
  105. /*global*/  int nestlevel();
  106. /*global*/  void getlowgrp();
  107. /*global*/  void skippointer();
  108. /*global*/  int gettoken();
  109. /*global*/  int getoccind();
  110. /*global*/  struct STATE *buildstate();
  111. /*global*/  struct STATEID *buildid();
  112. /*global*/  void insertpointer();
  113. /*global*/  void makeroom();
  114. /*global*/  ITEM *findendofgrp();
  115. /*global*/  void stripunit();
  116. /*global*/  void copy();
  117. /*global*/  int getconnector();
  118. /*global*/  void myexit();
  119. /*global*/  int searchtoken();
  120. /*global*/  struct STATE *mymalloc();
  121. /*global*/  int freefsa();
  122. /* DETTRAV.C */ 
  123. /*global*/  void procinordr();
  124. /*global*/  void procnode();
  125. /*global*/  void procdet();
  126. /*global*/  void findlabels();
  127. /*global*/  int searchamb();
  128. /*global*/  int ssearch();
  129. /* PREPROC.C */ 
  130. /*global*/  void preproc();
  131. /*global*/  void init();
  132. /*global*/  void tokenize();
  133. /*global*/  int mysearch();
  134. /*global*/  void get_name();
  135. /*global*/  void handleoi();
  136. /*global*/  void remove_blanks();
  137. /*global*/  void validate_expr();
  138. /*global*/  int get_expr();
  139. /*global*/  int get_string();
  140. /*global*/  int reduce();
  141. /*global*/  void replace_parens();
  142. /*global*/  void update_oi();
  143.