Česky
Kamil Dudka

Flex/Bison based compiler and interpreter written in C++ (using Boost)

File detail

Name:Downloadconfig.h [Download]
Location: vyp08 > vyp08-1.0pre1 > src
Size:2.5 KB
Last modification:2009-07-04 19:51

Source code

/*
 * Copyright (C) 2008 Kamil Dudka <xdudka00@stud.fit.vutbr.cz>
 *
 * This file is part of vyp08 (compiler and interpreter of VYP08 language).
 *
 * vyp08 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 3 of the License, or
 * any later version.
 *
 * vyp08 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 vyp08.  If not, see <http://www.gnu.org/licenses/>.
 */
 
#ifndef CONFIG_H
#define CONFIG_H
 
/* if non-zero, turn on colorized console output (stderr only) */
#define CONSOLE_COLOR_OUTPUT        1
 
/* ************************************************************************** */
/* diagnostic configuration, zero means "turn this diagnostic off" */
#define DEBUG_TRACE_CALL            0
#define DEBUG_TRACE_CMD_LIST_EXEC   0
#define DEBUG_BISON_LISTENER_STACK  0
#define DEBUG_TRACE_VMSTACK         0
#define DEBUG_TRACE_TYPESTACK       0
 
/* ************************************************************************** */
/* define different macros for Doxygen and ordinary build */
#ifdef BUILDING_DOX
 
/* use native pointer instead of boost::shared_ptr while building dox */
#define SHARED_PTR(T) T*
 
/* use native C array instead of std::map while building dox */
#define STD_MAP(T1, T2) T2*
 
/* use user defined struct instead of std::pair while building dox */
#define STD_PAIR(T1, T2) struct {T1 first; T2 second;}
 
/* use native C array instead of std::priority_queue while building dox */
#define STD_PRIORITY_QUEUE(T) T*
 
/* use native C array instead of std::set while building dox */
#define STD_SET(T) T*
 
/* use native C array instead of std::stack while building dox */
#define STD_STACK(T) T*
 
/* use native C array instead of std::vector while building dox */
#define STD_VECTOR(T) T*
 
#else /* BUILDING_DOX */
 
/* use what ought to be used while building code */
#define SHARED_PTR(T)           boost::shared_ptr<T>
#define STD_MAP(T1, T2)         std::map<T1, T2>
#define STD_PAIR(T1, T2)        std::pair<T1, T2>
#define STD_PRIORITY_QUEUE(T)   std::priority_queue<T>
#define STD_SET(T)              std::set<T>
#define STD_STACK(T)            std::stack<T>
#define STD_VECTOR(T)           std::vector<T>
 
#endif /* BUILDING_DOX */
 
#endif /* CONFIG_H */