X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginsh%2Fginsh.h;h=36b8308a43eaf90c9eb0996629d840b38c8d768f;hp=3c225cd36312ce77443b3d6bb797398968cc1faa;hb=e75c7a32a0ea156635aeec535b9cdf7d4bf3f9b9;hpb=4ea0576bb1199004d3a4ecbe4fd906301a5bad64 diff --git a/ginsh/ginsh.h b/ginsh/ginsh.h index 3c225cd3..36b8308a 100644 --- a/ginsh/ginsh.h +++ b/ginsh/ginsh.h @@ -2,7 +2,7 @@ * * Global definitions for ginsh. * - * GiNaC Copyright (C) 1999 Johannes Gutenberg University Mainz, Germany + * GiNaC Copyright (C) 1999-2010 Johannes Gutenberg University Mainz, Germany * * 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 @@ -16,31 +16,60 @@ * * 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 + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #ifndef GINSH_H #define GINSH_H -// yacc semantic type +#include +#include +#include + +#include +#include +#include + +using namespace std; + +#ifdef HAVE_READLINE_READLINE_H +extern "C" { +#include +} +#endif + +#ifdef HAVE_READLINE_HISTORY_H +extern "C" { +#include +} +#endif + +#ifdef IN_GINAC +#include "ginac.h" +#else +#include +#endif + +using namespace GiNaC; + +// yacc stack type #define YYSTYPE ex // lex functions/variables extern int yyerror(char *s); extern int yylex(void); -#if YYTEXT_POINTER extern char *yytext; -#else -extern char yytext[]; -#endif +extern FILE *yyin; + +// List of input files to be processed +extern int num_files; +extern char **file_list; // Table of all used symbols -typedef map sym_tab; +typedef map sym_tab; extern sym_tab syms; -// Prototypes for missing functions -#ifndef HAVE_STRDUP -extern char *strdup(const char *s); -#endif +// Type of symbols to generate (real or complex) +extern unsigned symboltype; #endif