Remove sunrpc compatibility
[openafs.git] / src / rxgen / rpc_scan.h
1 /* @(#)rpc_scan.h       1.1 87/11/04 3.9 RPCSRC */
2 /*
3  * Sun RPC is a product of Sun Microsystems, Inc. and is provided for
4  * unrestricted use provided that this legend is included on all tape
5  * media and as a part of the software program in whole or part.  Users
6  * may copy or modify Sun RPC without charge, but are not authorized
7  * to license or distribute it to anyone else except as part of a product or
8  * program developed by the user.
9  *
10  * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE
11  * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
12  * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
13  *
14  * Sun RPC is provided with no support and without any obligation on the
15  * part of Sun Microsystems, Inc. to assist in its use, correction,
16  * modification or enhancement.
17  *
18  * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
19  * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC
20  * OR ANY PART THEREOF.
21  *
22  * In no event will Sun Microsystems, Inc. be liable for any lost revenue
23  * or profits or other special, indirect and consequential damages, even if
24  * Sun has been advised of the possibility of such damages.
25  *
26  * Sun Microsystems, Inc.
27  * 2550 Garcia Avenue
28  * Mountain View, California  94043
29  */
30
31 /*
32  * rpc_scan.h, Definitions for the RPCL scanner
33  * Copyright (C) 1987, Sun Microsystems, Inc.
34  */
35
36 /*
37  * kinds of tokens
38  */
39 enum tok_kind {
40     TOK_IDENT,
41     TOK_STRCONST,
42     TOK_LPAREN,
43     TOK_RPAREN,
44     TOK_LBRACE,
45     TOK_RBRACE,
46     TOK_LBRACKET,
47     TOK_RBRACKET,
48     TOK_LANGLE,
49     TOK_RANGLE,
50     TOK_STAR,
51     TOK_COMMA,
52     TOK_EQUAL,
53     TOK_COLON,
54     TOK_SEMICOLON,
55     TOK_CONST,
56     TOK_STRUCT,
57     TOK_UNION,
58     TOK_SWITCH,
59     TOK_CASE,
60     TOK_DEFAULT,
61     TOK_ENUM,
62     TOK_TYPEDEF,
63     TOK_INT,
64     TOK_SHORT,
65     TOK_INT32,
66     TOK_UNSIGNED,
67     TOK_FLOAT,
68     TOK_DOUBLE,
69     TOK_OPAQUE,
70     TOK_CHAR,
71     TOK_STRING,
72     TOK_BOOL,
73     TOK_VOID,
74     TOK_PACKAGE,
75     TOK_PREFIX,
76     TOK_STATINDEX,
77     TOK_SPECIAL,
78     TOK_STARTINGOPCODE,
79     TOK_CUSTOMIZED,
80     TOK_PROC,
81     TOK_SPLITPREFIX,
82     TOK_SPLIT,
83     TOK_MULTI,
84     TOK_IN,
85     TOK_OUT,
86     TOK_INOUT,
87     TOK_AFSUUID,
88     TOK_EOF
89 };
90 typedef enum tok_kind tok_kind;
91
92 /*
93  * a token
94  */
95 struct token {
96     tok_kind kind;
97     char *str;
98 };
99 typedef struct token token;