<HTML>
<HEAD>
<TITLE>Grammar cgp/translators/AntlrCGIFParser.g</TITLE>
</HEAD>
<BODY>
<table border=1 cellpadding=5>
<tr>
<td>
<font size=+2>Grammar AntlrCGIFLexer</font><br>
<a href=http://www.ANTLR.org>ANTLR</a>-generated HTML file from cgp/translators/AntlrCGIFParser.g
<p>
Terence Parr, <a href=http://www.magelang.com>MageLang Institute</a>
<br>ANTLR Version 2.7.0; 1989-1999
</td>
</tr>
</table>
<PRE>
	
	package cgp.translators;
	
		import antlr.SemanticException;
	
		import cgp.translators.ContextScope;
		import cgp.translators.ContextScopeStack;
		import cgp.translators.DefinedQuantifier;
		import cgp.translators.NumericQuantifier;
	
		import notio.Actor;
		import notio.Concept;
		import notio.ConceptAddError;
		import notio.ConceptReplaceException;
		import notio.ConceptType;
		import notio.ConceptTypeHierarchy;
		import notio.CopyingScheme;
		import notio.Designator;
		import notio.Graph;
		import notio.KnowledgeBase;
		import notio.LiteralDesignator;
		import notio.Macro;
		import notio.Marker;
		import notio.MarkerDesignator;
		import notio.MarkerSet;
		import notio.NameDesignator;
		import notio.Parser;
		import notio.QuantifierMacro;
		import notio.Referent;
		import notio.Relation;
		import notio.RelationAddError;
		import notio.RelationType;
		import notio.RelationTypeHierarchy;
	
		import java.util.ArrayList;
	

/** 
 * CGIF lexical analyser for pCG.
 *
 * David Benn, June 2001
 */
class AntlrCGIFLexer extends CharScanner {

/** Lexer nextToken rule:
 *  The lexer nextToken rule is synthesized from all of the user-defined
 *  lexer rules.  It logically consists of one big alternative block with
 *  each user-defined rule being an alternative.
 */
<a href=AntlrCGIFLexer.html#mLBRACK>mLBRACK</a> 
|	<a href=AntlrCGIFLexer.html#mRBRACK>mRBRACK</a> 
|	<a href=AntlrCGIFLexer.html#mLPAREN>mLPAREN</a> 
|	<a href=AntlrCGIFLexer.html#mRPAREN>mRPAREN</a> 
|	<a href=AntlrCGIFLexer.html#mLANGLE>mLANGLE</a> 
|	<a href=AntlrCGIFLexer.html#mRANGLE>mRANGLE</a> 
|	<a href=AntlrCGIFLexer.html#mLBRACE>mLBRACE</a> 
|	<a href=AntlrCGIFLexer.html#mRBRACE>mRBRACE</a> 
|	<a href=AntlrCGIFLexer.html#mDOT>mDOT</a> 
|	<a href=AntlrCGIFLexer.html#mSTAR>mSTAR</a> 
|	<a href=AntlrCGIFLexer.html#mQUESTION>mQUESTION</a> 
|	<a href=AntlrCGIFLexer.html#mCOLON>mCOLON</a> 
|	<a href=AntlrCGIFLexer.html#mCOMMA>mCOMMA</a> 
|	<a href=AntlrCGIFLexer.html#mHASH>mHASH</a> 
|	<a href=AntlrCGIFLexer.html#mAT>mAT</a> 
|	<a href=AntlrCGIFLexer.html#mTILDE>mTILDE</a> 
|	<a href=AntlrCGIFLexer.html#mPERCENT>mPERCENT</a> 
|	<a href=AntlrCGIFLexer.html#mVERTBAR>mVERTBAR</a> 
|	<a href=AntlrCGIFLexer.html#mAMPERSAND>mAMPERSAND</a> 
|	<a href=AntlrCGIFLexer.html#mNEGATION_PREFIX>mNEGATION_PREFIX</a> 
|	<a href=AntlrCGIFLexer.html#mCOMMENT>mCOMMENT</a> 
|	<a href=AntlrCGIFLexer.html#mIDENTIFIER>mIDENTIFIER</a> 
|	<a href=AntlrCGIFLexer.html#mNUMBER>mNUMBER</a> 
|	<a href=AntlrCGIFLexer.html#mUNSIGNEDINT>mUNSIGNEDINT</a> 
|	<a href=AntlrCGIFLexer.html#mNAME>mNAME</a> 
|	<a href=AntlrCGIFLexer.html#mQUOTEDSTR>mQUOTEDSTR</a> 
|	<a href=AntlrCGIFLexer.html#mWS>mWS</a> 
<a name=mLBRACK>mLBRACK</a>
	:	'[' 
	;

<a name=mRBRACK>mRBRACK</a>
	:	']' 
	;

<a name=mLPAREN>mLPAREN</a>
	:	'(' 
	;

<a name=mRPAREN>mRPAREN</a>
	:	')' 
	;

<a name=mLANGLE>mLANGLE</a>
	:	'<' 
	;

<a name=mRANGLE>mRANGLE</a>
	:	'>' 
	;

<a name=mLBRACE>mLBRACE</a>
	:	'{' 
	;

<a name=mRBRACE>mRBRACE</a>
	:	'}' 
	;

<a name=mDOT>mDOT</a>
	:	'.' 
	;

<a name=mSTAR>mSTAR</a>
	:	'*' 
	;

<a name=mQUESTION>mQUESTION</a>
	:	'?' 
	;

<a name=mCOLON>mCOLON</a>
	:	':' 
	;

<a name=mCOMMA>mCOMMA</a>
	:	',' 
	;

<a name=mHASH>mHASH</a>
	:	'#' 
	;

<a name=mAT>mAT</a>
	:	'@' 
	;

<a name=mTILDE>mTILDE</a>
	:	'~' 
	;

<a name=mPERCENT>mPERCENT</a>
	:	'%' 
	;

<a name=mVERTBAR>mVERTBAR</a>
	:	'|' 
	;

<a name=mAMPERSAND>mAMPERSAND</a>
	:	'&' 
	;

<a name=mNEGATION_PREFIX>mNEGATION_PREFIX</a>
	:	"~[" 
	;

<a name=mCOMMENT>mCOMMENT</a>
	:	';' 
		(	~';' 
		|	";;" 
		)* 
		';' 
	;

<a name=mIDENTIFIER>mIDENTIFIER</a>
	:	(	<a href=AntlrCGIFLexer.html#mLETTER>mLETTER</a> 
		|	'_' 
		) 
		(	<a href=AntlrCGIFLexer.html#mLETTER>mLETTER</a> 
		|	<a href=AntlrCGIFLexer.html#mDIGIT>mDIGIT</a> 
		|	'_' 
		)* 
	;

protected <a name=mLETTER>mLETTER</a>
	:			'a'..'z' 
	;

protected <a name=mDIGIT>mDIGIT</a>
	:			'0'..'9' 
	;

<a name=mNUMBER>mNUMBER</a>
	:	(	'+' 
		|	'-' 
		) 
		(	( '.' <a href=AntlrCGIFLexer.html#mUNSIGNEDINT>mUNSIGNEDINT</a> 
				(	<a href=AntlrCGIFLexer.html#mEXPONENT>mEXPONENT</a> 
				|	
				) ) 
		|	( <a href=AntlrCGIFLexer.html#mUNSIGNEDINT>mUNSIGNEDINT</a> '.' ) => <a href=AntlrCGIFLexer.html#mUNSIGNEDINT>mUNSIGNEDINT</a> '.' 
			(	<a href=AntlrCGIFLexer.html#mUNSIGNEDINT>mUNSIGNEDINT</a> 
			|	
			) 
			(	<a href=AntlrCGIFLexer.html#mEXPONENT>mEXPONENT</a> 
			|	
			) 
		|	( <a href=AntlrCGIFLexer.html#mUNSIGNEDINT>mUNSIGNEDINT</a> <a href=AntlrCGIFLexer.html#mEXPONENT>mEXPONENT</a> ) => <a href=AntlrCGIFLexer.html#mUNSIGNEDINT>mUNSIGNEDINT</a> <a href=AntlrCGIFLexer.html#mEXPONENT>mEXPONENT</a> 
		|	<a href=AntlrCGIFLexer.html#mUNSIGNEDINT>mUNSIGNEDINT</a> 
		) 
	;

<a name=mUNSIGNEDINT>mUNSIGNEDINT</a>
	:	( <a href=AntlrCGIFLexer.html#mDIGIT>mDIGIT</a> )+ 
	;

protected <a name=mEXPONENT>mEXPONENT</a>
	:	'e' 
		(	'+' 
		|	'-' 
		|	
		) 
		<a href=AntlrCGIFLexer.html#mUNSIGNEDINT>mUNSIGNEDINT</a> 
	;

<a name=mNAME>mNAME</a>
	:	'\'' 
		(	~'\'' 
		|	"''" 
		)* 
		'\'' 
	;

<a name=mQUOTEDSTR>mQUOTEDSTR</a>
	:	'"' 
		(	~'"' 
		|	"\"\"" 
		)* 
		'"' 
	;

<a name=mWS>mWS</a>
	:	(	( (	"\r\n" 
				|	'\r' 
				|	'\n' 
				) 
				) 
		|	' ' 
		|	'\t' 
		|	'\f' 
		) 
		
	;
