libs-gsweb/GSWeb.framework/GSWHTMLParser.m
Mirko Viviani f975683fc8 2002-09-22 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* Makefile.postamble: install gsweb.make

	* GSWeb.framework/GSWDefaultAdaptor.m: added config.h

	* GSWeb.framework/Makefile.preamble.in: new file.
	* GSWeb.framework/Makefile.preamble: removed.
	* gsweb.make.in: new file.

	* configure.ac: new file.
	* config/pathxml.m4: new file.
	* gsweb.make.in: new file.
	* config.h.in: new file.

	* GSWeb.framework/GNUmakefile (GNUSTEP_LOCAL_ADDITIONAL_MAKEFILES):
	include gsweb.make

	* GSWeb.framework/GSWTemplateParserXML.h|.m: include libxml includes
	from libxml/ dir.

	* GSWeb.framework/*.m: replaced all occurrencies of stringWithout*: and
	remove*: with the new methods.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@14509 72102866-910b-0410-8b05-ffd578937521
2002-09-22 14:27:04 +00:00

200 lines
4.6 KiB
Objective-C

/*
* 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
*/
#include <GSWeb/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