libs-gsweb/GSWeb.framework/GSWHTMLParser.m

201 lines
4.6 KiB
Mathematica
Raw Normal View History

/*
* ANTLR-generated file resulting from grammar html.g
*
* Terence Parr, MageLang Institute
* with John Lilley, Empathy Software
* and Manuel Guesdon, Software Builders
* ANTLR Version 2.7.1; 1996,1997,1998,1999,2000
*/
2003-01-22 Manuel Guesdon <mguesdon@orange-concept.com> * GSWeb.framework/Makefile.postamble: o use $(LN_S) -f in install-WO-headers o added $(MKDIRS) $(GNUSTEP_HEADERS)/$(GSWExtensions_wo_HEADER_FILES_INSTALL_DIR); * GSWExtensionsGSW.framework/Makefile.postamble: use $(LN_S) -f in install-WO-headers 2003-01-20 David Ayers <d.ayers@inode.at> * Makefile.postamble o added support for make gswnames=(gsw,wo,all) (corrected typo) o reinserted support for $(INSTALL_ROOT_DIR) * config.h.in o added HAVE_GDL2 * configure o added support for --with-gswnames=(gsw,wo,all) o set LIBWRAP during configure o added config.mak.in as configurable file * configure.ac o (see configure) * config.mak: removed (replaced by config.mak.in) * config.mak.in: new file o added support for make gswnames=(gsw,wo,all) * gsweb.make.in o add GSANTLR as auxiliary lib o add gsweb libs to AUXILIARY_GSW_LIBS o include correct extensions for GSW/WO-libs * gsweb_wo.make: new file * GSWeb/GSWConfig.h o changed support for GSWEB_WONAMES o conditionally import file GSWWOCompatiblity here instead of in GSWeb.h * GSWeb/GNUMakefile o added support for make gswnames=(gsw,wo,all) o ensure each lib gets built with its own object files o removed deactivated framework extension determination code o removed reference to unused files: GSWeb.m, GSWWOCompatibility.m o added references to new files: GSWExtenstions.h, GSWExtWOCompatibility.h o added support to create WO header files * GSWeb/Makefile.postamble o changed support to install WO header files according to make gswnames=(gsw,wo,all) o remove Makefile.preamble during distclean * GSWeb/Makefile.preamble.in o fixed typo * GSWeb/GSWeb.h o moved GSW/WO-Name-mapping to GSWWOCompatibility.h o replaced inclusions of <GSWeb/file.h> with "file.h" * GSWeb/GSWeb.m: removed * GSWeb/GSWWOCompatibility.h o changed GSWEB_WONAMES handling o removed hybrid namespace WO subclasses o moved & reorganized GSW/WO-Name-mapping from GSWeb.h o inlucluded missing GSW/WO-Name-mappings * GSWeb/GSWWOCompatibility.m: removed * GSWeb/*.m o replaced inclusions of <GSWeb/file.h> with "file.h" * GSWeb/GSWApplication.m o remove special GSW/WO handling of WOApp * GSWeb/WebObject/WO*: removed * GSWeb/WebObject/WebObjects o replaced inclusions of <GSWeb/file.h> with "file.h" * GSWExtensions/GNUMakefile o added support for make gswnames=(gsw,wo,all) o ensure each lib gets built with its own object files o removed deactivated framework extension determination code o added references to new files: GSWExtenstions.h, GSWExtWOCompatibility.h o added support to create WO header files * GSWExtensions/Makefile.preamble o let gnustep make figure whether to link agains debug libs o added support for make gswnames=(gsw,wo,all) * GSWExtensions/Makefile.postamble o changed support to install WO header files according to make gswnames=(gsw,wo,all) * GSWExtensions/*.m o replaced inclusions of <GSWeb/GSWeb.h> with "GSWExtWOCompatibility.h" o replaces inclusions of <GSWExtensions/file.h> with "file.h" * GSWExtensions/GSWExtensions.h: new file * GSWExtensions/WOExtensions.h: new file * GSWExtensions/GSWExtWOCompatibility.h: new file * GSWExtensionsGSW/GNUMakefile o added support for make gswnames=(gsw,wo,all) o ensure each lib gets built with its own object files o removed deactivated framework extension determination code o added references to new file GSWExtGSWWOCompatibility.h o added support to create WO header files * GSWExtensionsGSW/Makefile.pramble o let gnustep make figure whether to link agains debug libs o added support for make gswnames=(gsw,wo,all) o removed GSWExtensions from ADDITIONAL_LIB_DIRS * GSWExtensionsGSW/*.m o replaced inclusions of <GSWeb/GSWeb.h> with "GSWExtGSWWOCompatibility.h" * GSWExtensions/GSWExtGSWWOCompatibility.h: new file git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@15675 72102866-910b-0410-8b05-ffd578937521
2003-01-22 12:24:26 +00:00
#include "GSWeb.h"
#include "gsantlr/ANTLRCommon.h"
#include "GSWHTMLParser.h"
#include "GSWHTMLTokenTypes.h"
#include "gsantlr/ANTLRNoViableAltException.h"
#include "gsantlr/ANTLRBitSet.h"
#include "gsantlr/ANTLRAST.h"
#include "gsantlr/ANTLRASTPair.h"
@implementation GSWHTMLParser
-(id)initWithTokenBuffer:(ANTLRTokenBuffer *)_buffer maxK:(int)_k
{
//LOGObjectFnStart();
self=[super initWithTokenBuffer:_buffer maxK:_k];
[self setTokenNames:GSWHTMLParser___tokenNames];
//LOGObjectFnStop();
return self;
}
-(id)initWithTokenBuffer:(ANTLRTokenBuffer *)_buffer
{
//LOGObjectFnStart();
self=[super initWithTokenBuffer:_buffer maxK:5];
[self setTokenNames:GSWHTMLParser___tokenNames];
//LOGObjectFnStop();
return self;
}
-(id)initWithTokenizer:(ANTLRDefTokenizer)_lexer maxK:(int)_k
{
//LOGObjectFnStart();
self=[super initWithTokenizer:_lexer maxK:_k];
[self setTokenNames:GSWHTMLParser___tokenNames];
//LOGObjectFnStop();
return self;
}
-(id)initWithTokenizer:(ANTLRDefTokenizer)_lexer
{
//LOGObjectFnStart();
self=[self initWithTokenizer:_lexer maxK:5];
[self setTokenNames:GSWHTMLParser___tokenNames];
//LOGObjectFnStop();
return self;
}
-(void) document
{
ANTLRASTPair* currentAST=[[ANTLRASTPair new] autorelease];
ANTLRDefAST document_AST = ANTLRnullAST;
ANTLRDefToken ot = nil;
ANTLRDefAST ot_AST = ANTLRnullAST;
ANTLRDefToken ct = nil;
ANTLRDefAST ct_AST = ANTLRnullAST;
ANTLRDefToken com = nil;
ANTLRDefAST com_AST = ANTLRnullAST;
DESTROY(errors);
DESTROY(warnings);
//LOGObjectFnStart();
ASSIGN(returnAST,ANTLRnullAST);
NS_DURING // for error handling
{
{
int _cnt3=0;
do
{
switch ( [self LA:1])
{
case GSWHTMLTokenType_WS:
{
{
ANTLRDefAST tmp1_AST = ANTLRnullAST;
tmp1_AST = [astFactory create:[self LT:1]];
[astFactory addASTChild:tmp1_AST in:currentAST];
}
[self matchTokenType:GSWHTMLTokenType_WS];
break;
}
case GSWHTMLTokenType_TEXT:
{
{
ANTLRDefAST tmp2_AST = ANTLRnullAST;
tmp2_AST = [astFactory create:[self LT:1]];
[astFactory addASTChild:tmp2_AST in:currentAST];
}
[self matchTokenType:GSWHTMLTokenType_TEXT];
break;
}
case GSWHTMLTokenType_OPENTAG:
{
ot = [self LT:1];
{
ot_AST = [astFactory create:ot];
[astFactory addASTChild:ot_AST in:currentAST];
}
[self matchTokenType:GSWHTMLTokenType_OPENTAG];
[ot_AST setText:[[[ot_AST text] stringByDeletingPrefix:@"<"] stringByDeletingSuffix:@">"]];
break;
}
case GSWHTMLTokenType_CLOSETAG:
{
ct = [self LT:1];
{
ct_AST = [astFactory create:ct];
[astFactory addASTChild:ct_AST in:currentAST];
}
[self matchTokenType:GSWHTMLTokenType_CLOSETAG];
[ct_AST setText:[[[ct_AST text] stringByDeletingPrefix:@"</"] stringByDeletingSuffix:@">"]];
break;
}
case GSWHTMLTokenType_COMMENT:
{
com = [self LT:1];
{
com_AST = [astFactory create:com];
[astFactory addASTChild:com_AST in:currentAST];
}
[self matchTokenType:GSWHTMLTokenType_COMMENT];
[com_AST setText:[[[com_AST text] stringByDeletingPrefix:@"<!--"] stringByDeletingSuffix:@"-->"]];
break;
}
default:
{
if ( _cnt3>=1 ) { goto _loop3; } else {[ANTLRNoViableAltException raiseWithToken:[self LT:1]];}
}
}
_cnt3++;
} while (YES);
_loop3:;
}
document_AST = [currentAST root];
}
NS_HANDLER
{
[self reportErrorWithException:localException];
[self consume];
[self consumeUntilTokenBitSet:GSWHTMLParser___tokenSet_0];
}
NS_ENDHANDLER;
ASSIGN(returnAST,document_AST);
//LOGObjectFnStop();
}
static CONST NSString* GSWHTMLParser___tokenNames[] = {
@"<0>",
@"EOF",
@"<2>",
@"NULL_TREE_LOOKAHEAD",
@"WS",
@"TEXT",
@"OPENTAG",
@"CLOSETAG",
@"COMMENT",
@"ATTR",
@"COMMENT_DATA",
@"WORD",
@"STRING",
@"WSCHARS",
@"SPECIAL",
@"HEXNUM",
@"INT",
@"HEXINT",
@"DIGIT",
@"HEXDIGIT",
@"LCLETTER",
@"UPLETTER",
@"LETTER",
@"UNDEFINED_TOKEN",
0
};
CONST unsigned long GSWHTMLParser___tokenSet_0_data_[] = { 2UL, 0UL, 0UL, 0UL };
static ANTLRBitSet* GSWHTMLParser___tokenSet_0=nil;
+(void)initialize
{
if (!GSWHTMLParser___tokenSet_0)
GSWHTMLParser___tokenSet_0=[[ANTLRBitSet bitSetWithULongBits:GSWHTMLParser___tokenSet_0_data_ length:8] retain];
}
+(void)dealloc
{
DESTROY(GSWHTMLParser___tokenSet_0);
[[self superclass] dealloc];
}
@end