Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

cw_iscanner_spec.h

Go to the documentation of this file.
00001 /*
00002  *  File:       cw_iscanner_spec.h
00003  *              $Id: cw_iscanner_spec.h,v 1.6 2002/05/08 10:34:51 alec Exp $
00004  *
00005  *  Author:     Alec Panoviciu (alecu@email.com)
00006  *
00007  *  Comments: this is the IScannerSpec "C" wrapper 
00008  *
00009  *  Revision history:
00010  *
00011  *  $Log: cw_iscanner_spec.h,v $
00012  *  Revision 1.6  2002/05/08 10:34:51  alec
00013  *  added keyword tokens support
00014  *
00015  *  Revision 1.5  2002/05/07 10:02:18  alec
00016  *  fixed some bugs & mem leaks; added MORE tokens support
00017  *
00018  *  Revision 1.4  2002/04/29 17:55:41  alec
00019  *  regexps almost done
00020  *
00021  *  Revision 1.3  2002/04/29 09:34:10  alec
00022  *  scanner ptree building compiles
00023  *
00024  *  Revision 1.2  2002/04/27 05:18:05  alec
00025  *  PLAYING WITH cvs :)
00026  *
00027  *  Revision 1.1  2002/04/27 05:16:34  alec
00028  *  IScanner "C" wrapper
00029  *
00030  */
00031 
00032 
00033 /* 
00034   Copyright (C) 2002 Alexandru Panoviciu (alecu@email.com)
00035 
00036   This program is free software; you can redistribute it and/or modify
00037   it under the terms of the GNU General Public License as published by
00038   the Free Software Foundation; either version 2 of the License, or
00039   (at your option) any later version.
00040 
00041   This program is distributed in the hope that it will be useful,
00042   but WITHOUT ANY WARRANTY; without even the implied warranty of
00043   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00044   GNU General Public License for more details.
00045 
00046   You should have received a copy of the GNU General Public License
00047   along with this program; if not, write to the Free Software
00048   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00049 
00050  */
00051 
00052 #ifndef __CW_ISCANNER_SPEC_H__
00053 #define __CW_ISCANNER_SPEC_H__
00054 
00055 #if defined __cplusplus
00056 
00057 class IScannerSpec;
00058 
00065 extern IScannerSpec* cw_scannerSpec;
00066 
00067 #define CLINK extern "C"
00068 
00069 #else
00070 
00071 #define CLINK
00072 
00073 #endif
00074 
00075 
00076 #include "cw_misc.h"
00077 
00093 CLINK void IScannerSpec_addRegToken (CstringList states_,
00094                                      char *name_, void *regexp_,
00095                                      char *tokenAction_);
00096 
00097 CLINK void IScannerSpec_addSkipToken (CstringList states_,
00098                                       char *name_, void *regexp_,
00099                                       char *tokenAction_);
00100 
00101 CLINK void IScannerSpec_addMoreToken (CstringList states_,
00102                                       char *name_, void *regexp_,
00103                                       char *tokenAction_);
00104 
00105 CLINK void IScannerSpec_addKeywordToken (CstringList states_,
00106                                          char *name_, void *regexp_,
00107                                          char *tokenAction_);
00108 
00109 CLINK void IScannerSpec_addSpecialToken (char *name_);
00110 
00111 CLINK void IScannerSpec_setPreambleCode (char *block_);
00112 
00113 CLINK void IScannerSpec_addCodeBlock (char *block_);
00114 
00115 CLINK void IScannerSpec_setInheritance (char *inheritance_);
00116 
00117 CLINK void IScannerSpec_setClassName (char *className_);
00118 /* @} */
00119 
00120 #endif /* #ifndef __CW_ISCANNER_SPEC_H__ */

Generated at Tue Jul 9 21:05:43 2002 for CppCC by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001