|
NCBI Home IEB Home C Toolkit docs C++ Toolkit source browser C Toolkit source browser (2) |
NCBI C Toolkit Cross ReferenceC/asnlib/asnlext.h |
source navigation diff markup identifier search freetext search file search |
1 /* asnlext.h
2 * ===========================================================================
3 *
4 * PUBLIC DOMAIN NOTICE
5 * National Center for Biotechnology Information
6 *
7 * This software/database is a "United States Government Work" under the
8 * terms of the United States Copyright Act. It was written as part of
9 * the author's official duties as a United States Government employee and
10 * thus cannot be copyrighted. This software/database is freely available
11 * to the public for use. The National Library of Medicine and the U.S.
12 * Government have not placed any restriction on its use or reproduction.
13 *
14 * Although all reasonable efforts have been taken to ensure the accuracy
15 * and reliability of the software and data, the NLM and the U.S.
16 * Government do not and cannot warrant the performance or results that
17 * may be obtained by using this software or data. The NLM and the U.S.
18 * Government disclaim all warranties, express or implied, including
19 * warranties of performance, merchantability or fitness for any particular
20 * purpose.
21 *
22 * Please cite the author in any work or product based on this material.
23 *
24 * ===========================================================================
25 *
26 * File Name: asnlext.h
27 *
28 * Author: James Ostell
29 *
30 * Version Creation Date: 1/1/91
31 *
32 * $Revision: 6.2 $
33 *
34 * File Description:
35 * typedefs and prototypes used internally by asnio.c
36 *
37 * Modifications:
38 * --------------------------------------------------------------------------
39 * Date Name Description of modification
40 * ------- ---------- -----------------------------------------------------
41 *
42 *
43 * $Log: asnlext.h,v $
44 * Revision 6.2 2001/06/26 22:03:17 juran
45 * Make C++-compatible.
46 *
47 * Revision 6.1 2000/05/12 20:44:00 ostell
48 * make changes to collect comments from spec and print in DTD
49 *
50 * Revision 6.0 1997/08/25 18:10:11 madden
51 * Revision changed to 6.0
52 *
53 * Revision 5.1 1996/12/03 21:43:48 vakatov
54 * Adopted for 32-bit MS-Windows DLLs
55 *
56 * Revision 5.0 1996/05/28 14:00:29 ostell
57 * Set to revision 5.0
58 *
59 * Revision 4.0 1995/07/26 13:47:38 ostell
60 * force revision to 4.0
61 *
62 * Revision 2.2 1995/05/15 18:38:28 ostell
63 * added Log line
64 *
65 *
66 * ==========================================================================
67 */
68
69 #ifndef _ASNLEXT_
70 #define _ASNLEXT_
71
72 #undef NLM_EXTERN
73 #ifdef NLM_IMPORT
74 #define NLM_EXTERN NLM_IMPORT
75 #else
76 #define NLM_EXTERN extern
77 #endif
78
79
80 /*************************************************************************
81 *
82 * tokens returned by AsnLexTWord()
83 * subset returned by AsnLexWord()
84 * 301 - 400 are reserved for asn1 primitive types and map
85 * to isa values
86 * These are defined in asnlex.h
87 * 401 - 500 are used for symbols and other reserved words
88 * 401-427 defined in asnlex.h
89 * this is a superset which includes ASN.1 additional reserved
90 * words for parsing syntax specifications
91 * AsnLexTMatchToken() depends on the order of these defines and
92 * the strings in asnwords[]
93 *
94 *************************************************************************/
95
96 #define DEF_TOKEN 428 /* DEFINITIONS */
97 #define BEGIN_TOKEN 429 /* BEGIN */
98 #define END_TOKEN 430 /* END */
99 #define AP_TAG_TOKEN 431 /* APPLICATION */
100 #define PRIV_TAG_TOKEN 432 /* PRIVATE */
101 #define UNIV_TAG_TOKEN 433 /* UNIVERSAL */
102 #define COMPS_TOKEN 434 /* COMPONENTS */
103 #define DEFAULT_TOKEN 435 /* DEFAULT */
104 #define FALSE_TOKEN 436 /* FALSE */
105 #define TRUE_TOKEN 437 /* TRUE */
106 #define IMPLICIT_TOKEN 438 /* IMPLICIT */
107 #define OPTIONAL_TOKEN 439 /* OPTIONAL */
108 #define EXPORTS_TOKEN 440 /* EXPORTS */
109 #define IMPORTS_TOKEN 441 /* IMPORTS */
110 #define ABSENT_TOKEN 442 /* ABSENT */
111 #define BY_TOKEN 443 /* BY */
112 #define COMP_TOKEN 444 /* COMPONENT */
113 #define DEFINE_TOKEN 445 /* DEFINED */
114 #define FROM_TOKEN 446 /* FROM */
115 #define INCLUDES_TOKEN 447 /* INCLUDES */
116 #define MIN_TOKEN 448 /* MIN */
117 #define MINUSI_TOKEN 449 /* MINUS-INFINITY */
118 #define MAX_TOKEN 450 /* MAX */
119 #define PRESENT_TOKEN 451 /* PRESENT */
120 #define PLUSI_TOKEN 452 /* PLUS-INFINITY */
121 #define SIZE_TOKEN 453 /* SIZE */
122 #define TAGS_TOKEN 454 /* TAGS */
123 #define WITH_TOKEN 455 /* WITH */
124 #define IDENT_TOKEN 456 /* IDENTIFIER (goes with OBJECT) */
125 #define REVISION_TOKEN 457 /* $Revision (NCBI only) */
126 #define ISMODULE_TOKEN 458 /* signal from PrintModule to AsnPrintIndent */
127 #define COMMENT_TOKEN 459 /* for comment on same line as an element */
128
129 #ifdef __cplusplus
130 extern "C" {
131 #endif
132
133 /*****************************************************************************
134 *
135 * prototypes
136 *
137 *****************************************************************************/
138
139 NLM_EXTERN AsnModulePtr AsnLexTReadModule PROTO((AsnIoPtr aip));
140 NLM_EXTERN Int2 AsnLexTReadTypeAssign PROTO((AsnIoPtr aip, AsnModulePtr amp));
141 NLM_EXTERN Int2 AsnLexTReadType PROTO((AsnIoPtr aip, AsnModulePtr amp, AsnTypePtr atp));
142 NLM_EXTERN AsnTypePtr AsnLexTReadElementTypeList PROTO((AsnIoPtr aip, AsnModulePtr amp, AsnTypePtr
143 parent));
144 NLM_EXTERN AsnTypePtr AsnLexTReadAlternativeTypeList PROTO((AsnIoPtr aip, AsnModulePtr amp,
145 AsnTypePtr parent));
146 NLM_EXTERN AsnModulePtr AsnLexTStartModule PROTO((AsnIoPtr aip));
147 NLM_EXTERN Int2 AsnLexTMatchToken PROTO((AsnIoPtr aip));
148 NLM_EXTERN Int2 AsnLexTWord PROTO((AsnIoPtr aip));
149
150 NLM_EXTERN AsnValxNodePtr AsnValxNodeNew PROTO((AsnValxNodePtr anvp, Int2 type));
151 NLM_EXTERN AsnTypePtr AsnGetType PROTO((AsnIoPtr aip, AsnModulePtr amp));
152 NLM_EXTERN AsnTypePtr AsnTypeNew PROTO((AsnIoPtr aip, AsnModulePtr amp));
153 NLM_EXTERN AsnTypePtr AsnElementTypeNew PROTO((AsnIoPtr aip));
154 NLM_EXTERN AsnModulePtr AsnCheckModule PROTO((AsnModulePtr amp, AsnIoPtr aip));
155 NLM_EXTERN void AsnSetTags PROTO((AsnTypePtr atp));
156
157 #ifdef __cplusplus
158 }
159 #endif
160
161
162 #undef NLM_EXTERN
163 #ifdef NLM_EXPORT
164 #define NLM_EXTERN NLM_EXPORT
165 #else
166 #define NLM_EXTERN
167 #endif
168
169 #endif
170 |
This page was automatically generated by the
LXR engine.
Visit the LXR main site for more information. |