| /* |
| * Main definitions and externals |
| * |
| * Copyright 2000 Bertho A. Stultiens (BS) |
| * |
| * This library is free software; you can redistribute it and/or |
| * modify it under the terms of the GNU Lesser General Public |
| * License as published by the Free Software Foundation; either |
| * version 2.1 of the License, or (at your option) any later version. |
| * |
| * This library 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 |
| * Lesser General Public License for more details. |
| * |
| * You should have received a copy of the GNU Lesser General Public |
| * License along with this library; if not, write to the Free Software |
| * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| */ |
| |
| #ifndef __WMC_WMC_H |
| #define __WMC_WMC_H |
| |
| #include <time.h> /* For time_t */ |
| |
| #include "wmctypes.h" |
| |
| #define WMC_MAJOR_VERSION 1 |
| #define WMC_MINOR_VERSION 0 |
| #define WMC_MICRO_VERSION 0 |
| #define WMC_RELEASEDATE "(12-Jun-2000)" |
| |
| #define WMC_STRINGIZE(a) #a |
| #define WMC_VERSIONIZE(a,b,c) WMC_STRINGIZE(a) "." WMC_STRINGIZE(b) "." WMC_STRINGIZE(c) |
| #define WMC_VERSION WMC_VERSIONIZE(WMC_MAJOR_VERSION, WMC_MINOR_VERSION, WMC_MICRO_VERSION) |
| #define WMC_FULLVERSION WMC_VERSION " " WMC_RELEASEDATE |
| |
| /* |
| * The default codepage setting is only to |
| * read and convert input which is non-message |
| * text. It doesn't really matter that much because |
| * all codepages map 0x00-0x7f to 0x0000-0x007f from |
| * char to unicode and all non-message text should |
| * be plain ASCII. |
| * However, we do implement iso-8859-1 for 1-to-1 |
| * mapping for all other chars, so this is very close |
| * to what we really want. |
| */ |
| #define WMC_DEFAULT_CODEPAGE 28591 |
| |
| extern int pedantic; |
| extern int leave_case; |
| extern int byteorder; |
| extern int decimal; |
| extern int custombit; |
| extern int unicodein; |
| extern int unicodeout; |
| extern int rcinline; |
| |
| extern char *output_name; |
| extern char *input_name; |
| extern char *header_name; |
| extern char *cmdline; |
| extern time_t now; |
| |
| extern int line_number; |
| extern int char_number; |
| |
| int yyparse(void); |
| extern int yydebug; |
| extern int want_nl; |
| extern int want_line; |
| extern int want_file; |
| extern node_t *nodehead; |
| extern lan_blk_t *lanblockhead; |
| |
| int yylex(void); |
| FILE *yyin; |
| void set_codepage(int cp); |
| |
| void add_token(tok_e type, const WCHAR *name, int tok, int cp, const WCHAR *alias, int fix); |
| token_t *lookup_token(const WCHAR *s); |
| void get_tokentable(token_t **tab, int *len); |
| |
| #endif |