/* * freescope - Free source browser * Copyright (C) 2001 Olivier Deme * * 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. */ /* * FILE: parser.h * * DESCRIPTION: This header file contains type definitions and global variables * that need to be accessed both by the C++ code and each C parser. */ #ifndef _PARSER_H_ #define _PARSER_H_ /********************/ /* TYPE DEFINITIONS */ /********************/ typedef unsigned char symbol_type_t; typedef unsigned short line_nbr_t; typedef int (*Add2Db)(symbol_type_t, char*, size_t, char*, size_t, line_nbr_t); typedef void (*DoLater)(char*, size_t); /********************/ /* GLOBAL VARIABLES */ /********************/ extern symbol_type_t DEFINITION; extern symbol_type_t FUNC_CALLED; extern symbol_type_t FUNC_CALL; extern symbol_type_t ASSIGNMENT; extern symbol_type_t INCLUDE; extern symbol_type_t ANY; extern char* GLOBAL_SCOPE; extern size_t GLOBAL_SCOPE_LENGTH; /*************************/ /* EXTERNAL DECLARATIONS */ /*************************/ extern Add2Db add2db; extern DoLater parse_later; #endif /* _PARSER_H_ */