| |
1 /* |
| |
2 * libtu/tester.c |
| |
3 * |
| |
4 * Copyright (c) Tuomo Valkonen 1999-2000. |
| |
5 * |
| |
6 * This file is distributed under the terms of the "Artistic License". |
| |
7 * See the included file LICENSE for details. |
| |
8 */ |
| |
9 |
| |
10 #include <stdio.h> |
| |
11 #include "include/misc.h" |
| |
12 #include "include/tokenizer.h" |
| |
13 |
| |
14 |
| |
15 int main(void) |
| |
16 { |
| |
17 Tokenizer*tokz; |
| |
18 Token tok=TOK_INIT; |
| |
19 |
| |
20 if(!(tokz=tokz_open_file(stdin))) |
| |
21 return EXIT_FAILURE; |
| |
22 |
| |
23 while(tokz_get_token(tokz, &tok)){ |
| |
24 switch(tok.type){ |
| |
25 case TOK_LONG: |
| |
26 printf("long - %ld\n", TOK_LONG_VAL(&tok)); |
| |
27 break; |
| |
28 case TOK_DOUBLE: |
| |
29 printf("double - %g\n", TOK_DOUBLE_VAL(&tok)); |
| |
30 break; |
| |
31 case TOK_CHAR: |
| |
32 printf("char - '%c'\n", TOK_CHAR_VAL(&tok)); |
| |
33 break; |
| |
34 case TOK_STRING: |
| |
35 printf("string - \"%s\"\n", TOK_STRING_VAL(&tok)); |
| |
36 break; |
| |
37 case TOK_IDENT: |
| |
38 printf("ident - %s\n", TOK_IDENT_VAL(&tok)); |
| |
39 break; |
| |
40 case TOK_COMMENT: |
| |
41 printf("comment - %s\n", TOK_COMMENT_VAL(&tok)); |
| |
42 break; |
| |
43 case TOK_OP: |
| |
44 printf("operator - %03x\n", TOK_OP_VAL(&tok)); |
| |
45 break; |
| |
46 } |
| |
47 } |
| |
48 |
| |
49 return EXIT_SUCCESS; |
| |
50 } |
| |
51 |