X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=token_t.h;h=5b40ee35f5067e635e6e125bc9f1df374c3884c8;hb=bf92df408b5fef01d5ee065b02c1deb7e4289a5b;hp=848c3adeea95e74a2e1734f17c9295505da74943;hpb=9d26a49e94a6cd2a4ad0d35faa6d7b0b628866d9;p=cparser diff --git a/token_t.h b/token_t.h index 848c3ad..5b40ee3 100644 --- a/token_t.h +++ b/token_t.h @@ -1,6 +1,6 @@ /* * This file is part of cparser. - * Copyright (C) 2007-2008 Matthias Braun + * Copyright (C) 2007-2009 Matthias Braun * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -53,22 +53,17 @@ typedef enum preprocessor_token_type_t { typedef struct source_position_t source_position_t; struct source_position_t { const char *input_name; - unsigned linenr; + unsigned lineno; + unsigned colno; }; /* position used for "builtin" declarations/types */ extern const source_position_t builtin_source_position; typedef struct { - int type; - union { - symbol_t *symbol; - long long intvalue; - long double floatvalue; - string_t string; - wide_string_t wide_string; - } v; - type_t *datatype; + int type; + symbol_t *symbol; /**< contains identifier. Contains number suffix for numbers */ + string_t literal; /**< string value/literal value */ source_position_t source_position; } token_t; @@ -77,7 +72,9 @@ void exit_tokens(void); void print_token_type(FILE *out, token_type_t token_type); void print_token(FILE *out, const token_t *token); -void print_pp_token_type(FILE *out, preprocessor_token_type_t type); +symbol_t *get_token_symbol(const token_t *token); + +void print_pp_token_type(FILE *out, int type); void print_pp_token(FILE *out, const token_t *token); #endif