cxx-pretty-print.h revision 132718
1132718Skan/* Interface for the GNU C++ pretty-printer. 2132718Skan Copyright (C) 2003 Free Software Foundation, Inc. 3132718Skan Contributed by Gabriel Dos Reis <gdr@integrable-solutions.net> 4132718Skan 5132718SkanThis file is part of GCC. 6132718Skan 7132718SkanGCC is free software; you can redistribute it and/or modify it under 8132718Skanthe terms of the GNU General Public License as published by the Free 9132718SkanSoftware Foundation; either version 2, or (at your option) any later 10132718Skanversion. 11132718Skan 12132718SkanGCC is distributed in the hope that it will be useful, but WITHOUT ANY 13132718SkanWARRANTY; without even the implied warranty of MERCHANTABILITY or 14132718SkanFITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 15132718Skanfor more details. 16132718Skan 17132718SkanYou should have received a copy of the GNU General Public License 18132718Skanalong with GCC; see the file COPYING. If not, write to the Free 19132718SkanSoftware Foundation, 59 Temple Place - Suite 330, Boston, MA 20132718Skan02111-1307, USA. */ 21132718Skan 22132718Skan#ifndef GCC_CXX_PRETTY_PRINT_H 23132718Skan#define GCC_CXX_PRETTY_PRINT_H 24132718Skan 25132718Skan#include "c-pretty-print.h" 26132718Skan 27132718Skan#undef pp_c_base 28132718Skan#define pp_c_base(PP) (&(PP)->c_base) 29132718Skan 30132718Skantypedef enum 31132718Skan{ 32132718Skan /* Ask for an qualified-id. */ 33132718Skan pp_cxx_flag_default_argument = 1 << pp_c_flag_last_bit 34132718Skan 35132718Skan} cxx_pretty_printer_flags; 36132718Skan 37132718Skantypedef struct 38132718Skan{ 39132718Skan c_pretty_printer c_base; 40132718Skan /* This is the enclosing scope of the entity being pretty-printed. */ 41132718Skan tree enclosing_scope; 42132718Skan} cxx_pretty_printer; 43132718Skan 44132718Skanvoid pp_cxx_pretty_printer_init (cxx_pretty_printer *); 45132718Skan 46132718Skanvoid pp_cxx_declaration (cxx_pretty_printer *, tree); 47132718Skanvoid pp_cxx_function_definition (cxx_pretty_printer *, tree); 48132718Skanvoid pp_cxx_canonical_template_parameter (cxx_pretty_printer *, tree); 49132718Skanvoid pp_cxx_statement (cxx_pretty_printer *, tree); 50132718Skan 51132718Skan 52132718Skan#endif /* GCC_CXX_PRETTY_PRINT_H */ 53