|
1 /* |
|
2 ******************************************************************************* |
|
3 * |
|
4 * Copyright (C) 1998-2011, International Business Machines |
|
5 * Corporation and others. All Rights Reserved. |
|
6 * |
|
7 ******************************************************************************* |
|
8 * |
|
9 * File read.h |
|
10 * |
|
11 * Modification History: |
|
12 * |
|
13 * Date Name Description |
|
14 * 05/26/99 stephen Creation. |
|
15 * 5/10/01 Ram removed ustdio dependency |
|
16 ******************************************************************************* |
|
17 */ |
|
18 |
|
19 #ifndef READ_H |
|
20 #define READ_H 1 |
|
21 |
|
22 #include "unicode/utypes.h" |
|
23 #include "ustr.h" |
|
24 #include "ucbuf.h" |
|
25 |
|
26 /* The types of tokens which may be returned by getNextToken. |
|
27 NOTE: Keep these in sync with tokenNames in parse.c */ |
|
28 enum ETokenType |
|
29 { |
|
30 TOK_STRING, /* A string token, such as "MonthNames" */ |
|
31 TOK_OPEN_BRACE, /* An opening brace character */ |
|
32 TOK_CLOSE_BRACE, /* A closing brace character */ |
|
33 TOK_COMMA, /* A comma */ |
|
34 TOK_COLON, /* A colon */ |
|
35 |
|
36 TOK_EOF, /* End of the file has been reached successfully */ |
|
37 TOK_ERROR, /* An error, such an unterminated quoted string */ |
|
38 TOK_TOKEN_COUNT /* Number of "real" token types */ |
|
39 }; |
|
40 |
|
41 U_CFUNC UChar32 unescape(UCHARBUF *buf, UErrorCode *status); |
|
42 |
|
43 U_CFUNC void resetLineNumber(void); |
|
44 |
|
45 U_CFUNC enum ETokenType |
|
46 getNextToken(UCHARBUF *buf, |
|
47 struct UString *token, |
|
48 uint32_t *linenumber, /* out: linenumber of token */ |
|
49 struct UString *comment, |
|
50 UErrorCode *status); |
|
51 |
|
52 #endif |