X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=lexer.h;h=bc9d297cb4f6879080de01b754620cdaedae7e47;hb=ce8747dcdb81cc4c5000092807102283a1e62b68;hp=3a3ea1f0f6cb35a0d5b63c7173d91471b5936a1a;hpb=bc2c469866488880921a9809d8dee3bd1333a25c;p=cparser diff --git a/lexer.h b/lexer.h index 3a3ea1f..bc9d297 100644 --- a/lexer.h +++ b/lexer.h @@ -1,10 +1,31 @@ +/* + * This file is part of cparser. + * 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 + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA + * 02111-1307, USA. + */ #ifndef LEXER_H #define LEXER_H #include "symbol_table_t.h" #include "token_t.h" +#include "input.h" -token_t lexer_token; +extern token_t lexer_token; +extern bool allow_dollar_in_symbol; void lexer_next_token(void); @@ -14,8 +35,9 @@ void lexer_next_preprocessing_token(void); void init_lexer(void); void exit_lexer(void); -void lexer_open_stream(FILE *stream, const char *input_name); +void lexer_switch_input(input_t *input, const char *input_name); -const char *concat_strings(const char *string1, const char *string2); +string_t concat_strings(const string_t *s1, const string_t *s2); +string_t make_string(const char *str); #endif