<html>
<head>
<style><!--
body {background-color:#ffffff;}
.file {border:1px solid #eeeeee;margin-top:1em;margin-bottom:1em;}
.pathname {font-family:monospace; float:right;}
.fileheader {margin-bottom:.5em;}
.diff {margin:0;}
.tasklist {padding:4px;border:1px dashed #000000;margin-top:1em;}
.tasklist ul {margin-top:0;margin-bottom:0;}
tr.alt {background-color:#eeeeee}
#added {background-color:#ddffdd;}
#addedchars {background-color:#99ff99;font-weight:bolder;}
tr.alt #added {background-color:#ccf7cc;}
#removed {background-color:#ffdddd;}
#removedchars {background-color:#ff9999;font-weight:bolder;}
tr.alt #removed {background-color:#f7cccc;}
#copied {background-color:#ccccff;}
tr.alt #copied {background-color:#bbbbf7;}
#info {color:#888888;}
#context {background-color:#eeeeee;}
td {padding-left:.3em;padding-right:.3em;}
tr.head {border-bottom-width:1px;border-bottom-style:solid;}
tr.head td {padding:0;padding-top:.2em;}
.task {background-color:#ffff00;}
.comment {white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;white-space:pre-wrap;word-wrap:break-word;padding:4px;border:1px dashed #000000;background-color:#ffffdd}
.error {color:red;}
hr {border-width:0px;height:2px;background:black;}
--></style>
</head>
<body>
<table cellspacing="0" cellpadding="0" border="0" rules="cols">
<tr class="head"><td colspan="5">Commit in <b><tt>metaas/branches/metaas-0.7/src/main/antlr/org/asdt/core/internal/antlr</tt></b></td></tr>
<tr><td><tt><a href="#file1"><span id="removed">as3.g</span></a></tt> </td><td></td><td></td><td align="right" id="removed">-881</td><td nowrap="nowrap">484 removed</td></tr>
</table>
<pre class="comment">
remove old grammar already removed from the trunk
</pre>
<hr /><a name="file1" /><div class="file">
<span class="pathname" id="removed">metaas/branches/metaas-0.7/src/main/antlr/org/asdt/core/internal/antlr</span><br />
<div class="fileheader" id="removed"><big><b>as3.g</b></big> <small id="info">removed after 484</small></div>
<pre class="diff"><small id="info">--- branches/metaas-0.7/src/main/antlr/org/asdt/core/internal/antlr/as3.g        2007-05-19 23:16:57 UTC (rev 484)
+++ branches/metaas-0.7/src/main/antlr/org/asdt/core/internal/antlr/as3.g        2007-05-20 00:24:56 UTC (rev 485)
@@ -1,881 +0,0 @@
</small></pre><pre class="diff" id="removed">-
-header{
-        
-/**********************************************************
- * ActionScript Development Tool
- * Copyright (C) 2005 asdt.org
- *
- * http://www.asdt.org
- * http://sourceforge.net/projects/aseclipseplugin/
- *
- * This program is free software;
- * you can redistribute it and/or modify it under the terms of
- * the GNU General Public License as published by the
- * Free Software Foundation; either version 2 of the License,
- * or (at your option) any later version.
- *
- * This program 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
- *
- * Created on 29 sept 2005
- *
- **********************************************************/
-
-
-package org.asdt.core.internal.antlr;
-
-import uk.co.badgersinfoil.metaas.impl.OurCommonASTWithHiddenTokens;
-}
-
-/**
- *        @author Martin Schnabel
- */
-class AS3Parser extends Parser;
-
-options {
-        k = 2;
-        exportVocab = AS3;
-        buildAST = true;
-        defaultErrorHandler=false;
-}
-
-tokens {
-        COMPILATION_UNIT;
-        TYPE_BLOCK<AST=uk.co.badgersinfoil.metaas.impl.ParentheticAST>; METHOD_DEF;
-        MODIFIERS; NAMESPACE_DEF;
-        CLASS_DEF; INTERFACE_DEF;
-        PARAMS<AST=uk.co.badgersinfoil.metaas.impl.ParentheticAST>;
-        PARAM; TYPE_SPEC;
-        BLOCK<AST=uk.co.badgersinfoil.metaas.impl.ParentheticAST>; EXPR; ELIST;
-        EXPR_STMNT<AST=uk.co.badgersinfoil.metaas.impl.ExprStmtAST>;
-        ENCPS_EXPR<AST=uk.co.badgersinfoil.metaas.impl.ParentheticAST>;
-        VAR_INIT;
-        "import"<AST=uk.co.badgersinfoil.metaas.impl.ExprStmtAST>;
-        "return"<AST=uk.co.badgersinfoil.metaas.impl.ExprStmtAST>;
-        "break"<AST=uk.co.badgersinfoil.metaas.impl.ExprStmtAST>;
-        "continue"<AST=uk.co.badgersinfoil.metaas.impl.ExprStmtAST>;
-        "var"<AST=uk.co.badgersinfoil.metaas.impl.ExprStmtAST>;
-        METHOD_CALL<AST=uk.co.badgersinfoil.metaas.impl.ParentheticAST>;
-        ARRAY_ACC<AST=uk.co.badgersinfoil.metaas.impl.ParentheticAST>;
-        UNARY_PLUS; UNARY_MINUS; POST_INC; POST_DEC;
-        ARRAY_LITERAL<AST=uk.co.badgersinfoil.metaas.impl.ParentheticAST>;
-        ELEMENT; OBJECT_LITERAL<AST=uk.co.badgersinfoil.metaas.impl.ParentheticAST>;
-        OBJECT_FIELD; FUNC_DEF;
-        FOR_INIT; FOR_CONDITION; FOR_ITERATOR;
-}
-{
-        private void hoistHiddenTokens(AST ast) {
-                OurCommonASTWithHiddenTokens node = (OurCommonASTWithHiddenTokens)ast;
-                OurCommonASTWithHiddenTokens prev = (OurCommonASTWithHiddenTokens)ast.getFirstChild();
-                if (prev != null) {
-                        if (prev.getType() == AS3TokenTypes.MODIFIERS && prev.getFirstChild() == null) {
-                                prev = (OurCommonASTWithHiddenTokens)prev.getNextSibling();
-                        }
-                        node.setHiddenBefore(prev.getHiddenBefore());
-                        prev.setHiddenBefore(null);
-                }
-        }
-}
-/**
- * this is the start rule for this parser
- */
-compilationUnit
-        :        (        as2CompilationUnit
-                |        as3CompilationUnit
-                )
-                {## = #(#[COMPILATION_UNIT,"COMPILATION_UNIT"],##);}
-       
-
-as2CompilationUnit
-        :        (importDefinition)*
-                classDefinition[null]
-        |        interfaceDefinition[null]
-       
-
-as3CompilationUnit
-        :        "package" (identifier)?
-                packageBlock
-                EOF!
-       
-
-packageBlock
-        :        s:LCURLY!
-                (        importDefinition
-                |        mods:modifiers!
-                        (        classDefinition[#mods]
-                        |        interfaceDefinition[#mods]
-                        |        variableDefinition[#mods]
-                        |        methodDefinition[#mods]
-                        |        namespaceDefinition[#mods]
-                        )
-                |        SEMI!
-                )*
-                e:RCURLY!
-                {## = #(#[BLOCK,"BLOCK"],##);
-                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setStart(#s);
-                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setEnd(#e);}
-       
-        
-
-endOfFile
-        :        EOF!
-       
-
-importDefinition
-        :        s:"import"^ e:identifierStar ({LA(1)==SEMI}?SEMI!)?
-       
-        
-
-classDefinition[AST mods]
-        :        "class" identifier
-                classExtendsClause
-                implementsClause
-                typeBlock
-                { ## = #([CLASS_DEF], mods, ##);
-                hoistHiddenTokens(##); }
-       
-
-interfaceDefinition[AST mods]
-        :        "interface" identifier
-                interfaceExtendsClause
-                typeBlock
-                { ## = #([INTERFACE_DEF], mods, ##);
-                hoistHiddenTokens(##); }
-       
-classExtendsClause
-        :        (s:"extends"^ e:identifier)?
-       
-interfaceExtendsClause
-        :        (s:"extends"^ e1:identifier ( COMMA! e2:identifier)*)?
-       
-implementsClause
-        :        (s:"implements"^ e1:identifier ( COMMA! e2:identifier)*)?
-       
-typeBlock
-        :        s:LCURLY!
-                (        m:modifiers!
-                        (        variableDefinition[#m]
-                        |        methodDefinition[#m]
-                        )
-                        |SEMI!
-                        |importDefinition
-                )*
-                e:RCURLY!
-                {## = #([TYPE_BLOCK, "TYPE_BLOCK"], ##);
-                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setStart(#s);
-                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setEnd(#e);}
-       
-methodDefinition[AST mods]
-        :        s:"function" ("get"|"set")? IDENT
-                parameterDeclarationList
-                e1:typeExpression
-                (e2:block)?
-                {## = #([METHOD_DEF, "METHOD_DEF"],mods, ##);
-                hoistHiddenTokens(##);}
-       
-namespaceDefinition[AST mods]
-        :        namespaceKeyword IDENT
-                {## = #([NAMESPACE_DEF, "NAMESPACE_DEF"],##,mods);}
-       
-namespaceKeyword
-        :        {LT(1).getText().equals("namespace")}? IDENT
-       
-variableDefinition[AST mods]
-        :        ("var"^|"const"^) variableDeclarator
-                (COMMA!        variableDeclarator)*
-                {##.addChild(mods);}
-       
-        
-variableDeclarator
- : s:IDENT e1:typeExpression (e2:variableInitializer)?
- ;
-declaration
-        :        "var"^ variableDeclarator
-                (COMMA!        variableDeclarator)*
-       
-variableInitializer
-        :        s:ASSIGN^ e:expression
-                
-// A list of formal parameters
-parameterDeclarationList
-        :        s:LPAREN!
-                (        ( parameterDeclaration | parameterRestDeclaration)
-                        (        COMMA! ( parameterDeclaration | parameterRestDeclaration))*
-                )?
-                e:RPAREN!
-                {## = #([PARAMS, "PARAMS"], ##);
-                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setStart(#s);
-                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setEnd(#e);}
-       
-        
-parameterDeclaration
-        :        ("const")? IDENT typeExpression (ASSIGN assignmentExpression)?
-                {## = #([PARAM,"PARAM"],##);}
-       
-parameterRestDeclaration
-        :        REST ("const")? IDENT
-                {## = #([PARAM,"PARAM"],##);}
-       
-block
-        :        s:LCURLY! (statement)* e:RCURLY!
-                {## = #([BLOCK, "BLOCK"], ##);
-                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setStart(#s);
-                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setEnd(#e);}
-       
-
-statement
-        :        {LA(1)==LCURLY}?(block)
-        |        s1:declaration ({LA(1)==SEMI}?(e1:SEMI!))?
-        |        s2:assignmentExpression ({LA(1)==SEMI}?(e2:SEMI!))?
-                {## = #([EXPR_STMNT, "EXPR_STMNT"], ##);
-                ((uk.co.badgersinfoil.metaas.impl.ExprStmtAST)##).setSemi(#e1==null?#e2:#e1);}
-        |        ifStatement
-        // For statement
-        |        forStatement
-
-        // While statement
-        |        "while"^ LPAREN! expression RPAREN! statement
-
-        // do-while statement
-        |        "do"^ statement "while"! LPAREN! expression RPAREN!
-        
-        // with statement
-        |        "with"^ LPAREN! expression RPAREN! statement
-        
-        // switch statement
-        |        switchStatement
-        
-        // get out of a loop (or switch)
-        |        breakStatement
-
-        // do next iteration of a loop
-        |        continueStatement
-
-        // Return an expression
-        |        returnStatement
-
-        // throw an exception
-        |        throwStatement
-        
-        // handle exceptions
-        |        tryStatement
-
-        // empty statement
-        |        SEMI!
-       
-        
-ifStatement
-        :        s:"if"^ LPAREN! expression RPAREN! e1:statement
-                (        options {greedy=true;}: e2:elseStatement)*
-       
-
-elseStatement
-        :        s:"else"^ e:statement
-       
-throwStatement
-        :        s:"throw"^ e1:expression ({LA(1)==SEMI}?(e2:SEMI!))?
-       
-
-tryStatement
-        :        "try"
-                block
-                (        "catch" LPAREN! IDENT typeExpression RPAREN!
-                        block
-                )?
-                (
-                        "finally"
-                        block
-                )?
-       
-
-returnStatement
-        :        s:"return"^ (options {greedy=true;} :e1:expression)? ({LA(1)==SEMI}?(e2:SEMI!))?
-       
-                
-continueStatement
-        :        s:"continue"^ ({LA(1)==SEMI}?(e:SEMI!))?
-       
-
-breakStatement
-        :        s:"break"^( {LA(1)==SEMI}?(e:SEMI!))?
-       
-
-switchStatement
-        :        s:"switch"^ LPAREN! expression RPAREN!
-                e:switchBlock
-       
-
-switchBlock
-        :        s:LCURLY!
-                (caseStatement)*
-                (defaultStatement)?
-                e:RCURLY!
-                {## = #(#[BLOCK,"BLOCK"], ##);
-                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setStart(#s);
-                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setEnd(#e);}
-       
-
-caseStatement
-        :        s:"case"^ expression e1:COLON! (e2:statement)*
-       
-        
-defaultStatement
-        :        s:"default"^ e1:COLON! (e2:statement)*
-       
-forStatement
-        :        s:"for"^
-                (        (LPAREN forInit SEMI)=>traditionalForClause
-                |        forInClause
-                )
-                e:statement                                         // statement to loop over
-       
-traditionalForClause
-        :        s:LPAREN!
-                forInit SEMI!        // initializer
-                forCond SEMI!        // condition test
-                forIter                        // updater
-                e:RPAREN!
-       
-
-forInClause
-        :        s:LPAREN!
-                declaration "in" expression
-                e:RPAREN!
-       
-// The initializer for a for loop
-forInit        
-        :        ((declaration)=> s1:declaration | s2:expressionList )?
-                {## = #(#[FOR_INIT,"FOR_INIT"],##);}
-       
-
-forCond
-        :        (s:expression)?
-                {## = #(#[FOR_CONDITION,"FOR_CONDITION"],##);}
-       
-
-forIter
-        :        (s:expressionList)?
-                {## = #(#[FOR_ITERATOR,"FOR_ITERATOR"],##);}
-       
-
-typeExpression
-        :        (        COLON^
-                        (identifier | "void" | STAR)
-                        {##.setType(TYPE_SPEC);}
-                )?
-                
-
-identifier
-        :        s:IDENT^
-                (        options{greedy=true;}
-                :         DOT! e:IDENT^
-                )*
-       
-
-identifierStar
-        :        s:IDENT^
-                (        options{greedy=true;}
-                :        DOT! e1:IDENT^
-                )*
-                (        DOT! e2:STAR^
-                )?
-       
-modifiers
-        :        ( s:modifier (e:modifier)* )?
-                {## = #([MODIFIERS, "MODIFIERS"],##);
-                hoistHiddenTokens(##);}
-       
-modifier
-        :        "public"
-        |        "private"
-        |        "protected"
-        |        "internal"
-        |        "static"
-        |        "final"
-        |        "enumerable"
-        |        "explicit"
-        |        "override"
-        |        "dynamic"
-       
-arguments
-        :        (        expressionList
-                |        /*nothing*/
-                        {#arguments = #[ELIST,"ELIST"];}
-                )
-       
-// This is an initializer used to set up an array.
-arrayLiteral
-        :        s:LBRACK! (elementList)? e:RBRACK!
-                {## = #([ARRAY_LITERAL, "ARRAY_LITERAL"],##);
-                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setStart(#s);
-                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setEnd(#e);}
-       
-                
-elementList
-        :        COMMA!
-        |        nonemptyElementList
-       
-nonemptyElementList
-        :        assignmentExpression (COMMA! assignmentExpression)*
-       
-
-element
-        :        s:assignmentExpression
-                {## = #([ELEMENT,"ELEMENT"],##);}
-       
-
-// This is an initializer used to set up an object.
-objectLiteral
-        :        s:LCURLY! (fieldList)? e:RCURLY!
-                {## = #([OBJECT_LITERAL,"OBJECT_LITERAL"],##);
-                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setStart(#s);
-                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setEnd(#e);}
-       
-        
-fieldList
-        :        literalField (COMMA! (literalField)?)*
-       
-        
-literalField
-        :         s:fieldName COLON! e:element
-                {## = #([OBJECT_FIELD,"OBJECT_FIELD"],##);}
-       
-        
-fieldName
-        :        IDENT
-        |        NUMBER
-       
-
-// the mother of all expressions
-expression
-        :        s:assignmentExpression
-                {## = #(#[EXPR,"EXPR"],##);}
-       
-
-// This is a list of expressions.
-expressionList
-        :        s:expression (COMMA! e:expression)*
-                {## = #(#[ELIST,"ELIST"], ##);}
-       
-
-// assignment expression (level 13)
-assignmentExpression
-        :        s:conditionalExpression
-        (        (        (        ASSIGN
-                        |         STAR_ASSIGN
-                        |        DIV_ASSIGN
-                        |        MOD_ASSIGN
-                        |        PLUS_ASSIGN
-                        |        MINUS_ASSIGN
-                        |        SL_ASSIGN
-                        |        SR_ASSIGN
-                        |        BSR_ASSIGN
-                        |        BAND_ASSIGN
-                        |        BXOR_ASSIGN
-                        |        BOR_ASSIGN
-                        |        LAND_ASSIGN
-                        |        LOR_ASSIGN
-                        )        ~ASSIGN
-                )=>
-                        (        ASSIGN^
-                        |         STAR_ASSIGN^
-                        |        DIV_ASSIGN^
-                        |        MOD_ASSIGN^
-                        |        PLUS_ASSIGN^
-                        |        MINUS_ASSIGN^
-                        |        SL_ASSIGN^
-                        |        SR_ASSIGN^
-                        |        BSR_ASSIGN^
-                        |        BAND_ASSIGN^
-                        |        BXOR_ASSIGN^
-                        |        BOR_ASSIGN^
-                        |        LAND_ASSIGN^
-                        |        LOR_ASSIGN^
-                        )
-                e:assignmentExpression
-        )?
-       
-// conditional test (level 12)
-conditionalExpression
-        :        s:logicalOrExpression
-                (        options {greedy=true;}
-                :        QUESTION^
-                        e:conditionalSubExpression
-                )*
-       
-conditionalSubExpression
-        :        s:assignmentExpression COLON^ e:assignmentExpression
-       
-// logical or (||) (level 11)
-logicalOrExpression
-        :        logicalAndExpression (LOR^ logicalAndExpression)*
-       
-// logical and (&&) (level 10)
-logicalAndExpression
-        :        bitwiseOrExpression (LAND^ bitwiseOrExpression)*
-       
-// bitwise or non-short-circuiting or (|) (level 9)
-bitwiseOrExpression
-        :        bitwiseXorExpression (BOR^ bitwiseXorExpression)*
-                
-// exclusive or (^) (level 8)
-bitwiseXorExpression
-        :        bitwiseAndExpression (BXOR^ bitwiseAndExpression)*
-       
-// bitwise or non-short-circuiting and (&) (level 7)
-bitwiseAndExpression
-        :        equalityExpression (BAND^ equalityExpression)*
-       
-// equality/inequality (==/!=) (level 6)
-equalityExpression
-        :        relationalExpression
-        (        ( STRICT_EQUAL^ | STRICT_NOT_EQUAL^ | NOT_EQUAL^ | EQUAL^ )
-                relationalExpression
-        )*
-       
-        
-// boolean relational expressions (level 5)
-relationalExpression
-        :        shiftExpression ((LT^ | GT^ | LE^ | GE^ | "is"^ | "as"^) shiftExpression)*
-       
-                
-// bit shift expressions (level 4)
-shiftExpression
-        :        additiveExpression ((SL^ | SR^ | BSR^) additiveExpression)*
-       
-                
-// binary addition/subtraction (level 3)
-additiveExpression
-        :        multiplicativeExpression (options {greedy=true;} :(PLUS^ | MINUS^) multiplicativeExpression)*
-       
-// multiplication/division/modulo (level 2)
-multiplicativeExpression
-        :        unaryExpression ((STAR^ | DIV^ | MOD^) unaryExpression)*
-       
-//        (level 1)
-unaryExpression
-        :        INC^ unaryExpression
-        |        DEC^ unaryExpression
-        |        MINUS^ {#MINUS.setType(UNARY_MINUS);} unaryExpression
-        |        PLUS^ {#PLUS.setType(UNARY_PLUS);} unaryExpression
-        |        unaryExpressionNotPlusMinus
-       
-unaryExpressionNotPlusMinus
-        :        "delete" postfixExpression
-        |        "void" unaryExpression
-        |        "typeof" unaryExpression
-        |        LNOT^ unaryExpression
-        |        BNOT^ unaryExpression
-        |        postfixExpression
-       
-
-// qualified names, array expressions, method invocation, post inc/dec
-postfixExpression
-        :        s:primaryExpression
-                (        options{greedy=true;} :
-                        (        DOT!
-                                (        options {generateAmbigWarnings=false;}
-                                :        e11:IDENT^        
-                                |        e12:e4xExpression
-                                )
-                        |        (        t1:LBRACK! expression e2:RBRACK!
-                                        {## = #([ARRAY_ACC,"ARRAY_ACC"],##);
-                                        ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setStart(#t1);
-                                        ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setEnd(#e2);}
-                                )
-                        |        E4X_DESC^ e4xExpression
-                        )
-                        methodCall
-                )*
-                (        options {greedy=true;}
-                :         in:INC^ {#in.setType(POST_INC);}
-                 |        de:DEC^ {#de.setType(POST_DEC);}
-                )?
-        
-
-methodCall
-        :        (        options {greedy=true;}
-                        :        t2:LPAREN! arguments! e3:RPAREN!
-                                {## = #([METHOD_CALL,"METHOD_CALL"],##);
-                                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setStart(#t2);
-                                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setEnd(#e3);}
-                                (        options {greedy=true;}
-                                :        t3:LPAREN! arguments e4:RPAREN!
-                                        {## = #([METHOD_CALL,"METHOD_CALL"],##);
-                                        ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setStart(#t3);
-                                        ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setEnd(#e4);}
-                                )*
-                        )?
-       
-e4xExpression
-        :        IDENT
-        |        e12:STAR^
-        |        e13:E4X_ATTRI^
-                (        IDENT
-                |        (STAR)? t1:LBRACK^ expression e2:RBRACK!        
-                )
-       
-primaryExpression
-        :        identPrimary
-        |        "null"
-        |        "true"
-        |        "false"
-        |        "undefined"
- | constant
-        |        arrayLiteral
-        |        objectLiteral
- |        functionDefinition
- |        newExpression
- |        encapsulatedExpression
-       
-identPrimary
-        :        s:IDENT
-                (        options{greedy=true;}
-                :        DOT! e1:IDENT^
-                |        (        t1:LBRACK! expression e2:RBRACK!
-                                {## = #([ARRAY_ACC,"ARRAY_ACC"],##);
-                                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setStart(#t1);
-                                ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setEnd(#e2);}
-                        )
-                )*
-                (        options {greedy=true;}
-                :        t2:LPAREN! a:arguments! e3:RPAREN!
-                        {## = #([METHOD_CALL,"METHOD_CALL"],##,#a);
-                        ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setStart(#t2);
-                        ((uk.co.badgersinfoil.metaas.impl.ParentheticAST)##).setEnd(#e3);}
-                )*
- ;
-
-constant
-        :        NUMBER
-        |        STRING_LITERAL
-        |        REGEX_LITERAL
-        |        XML_LITERAL
-       
-newExpression
-        :        s:"new"^ e:postfixExpression
-       
-encapsulatedExpression
-        :        s:LPAREN assignmentExpression e:RPAREN
-                {## = #([ENCPS_EXPR,"ENCPS_EXPR"],##);}
-       
-functionDefinition
-        :        s:"function" parameterDeclarationList typeExpression e:block
-                {## = #([FUNC_DEF,"FUNC_DEF"],##);}
-       
-class AS3Lexer extends Lexer;
-
-options {
-        exportVocab=AS3;         // call the vocabulary "AS3"
-        testLiterals=false;         // don't automatically test for literals
-        k=4;         // four characters of lookahead
-        charVocabulary='\u0003'..'\u7FFE';
-        codeGenBitsetTestThreshold=20;
-        defaultErrorHandler=false;
-}
-
-// OPERATORS
-QUESTION                :        '?'               
-LPAREN                        :        '('               
-RPAREN                        :        ')'               
-LBRACK                        :        '['               
-RBRACK                        :        ']'               
-LCURLY                        :        '{'               
-RCURLY                        :        '}'               
-COLON                        :        ':'               
-DBL_COLON                :        "::"       
-COMMA                        :        ','               
-ASSIGN                        :        '='               
-EQUAL                        :        "=="       
-STRICT_EQUAL        :        "==="       
-LNOT                        :        '!'               
-BNOT                        :        '~'               
-NOT_EQUAL                :        "!="       
-STRICT_NOT_EQUAL:        "!=="       
-DIV                                :        '/'               
-DIV_ASSIGN                :        "/="       
-PLUS                        :        '+'               
-PLUS_ASSIGN                :        "+="       
-INC                                :        "++"       
-MINUS                        :        '-'               
-MINUS_ASSIGN        :        "-="       
-DEC                                :        "--"       
-STAR                        :        '*'               
-STAR_ASSIGN                :        "*="       
-MOD                                :        '%'               
-MOD_ASSIGN                :        "%="       
-SR                                :        ">>"       
-SR_ASSIGN                :        ">>="       
-BSR                                :        ">>>"       
-BSR_ASSIGN                :        ">>>="       
-GE                                :        ">="       
-GT                                :        '>'               
-SL                                :        "<<"       
-SL_ASSIGN                :        "<<="       
-LE                                :        "<="       
-LT                                :        '<'               
-BXOR                        :        '^'               
-BXOR_ASSIGN                :        "^="       
-BOR                                :        '|'               
-BOR_ASSIGN                :        "|="       
-LOR                                :        "||"       
-BAND                        :        '&'               
-BAND_ASSIGN                :        "&="       
-LAND                        :        "&&"       
-LAND_ASSIGN                :        "&&="       
-LOR_ASSIGN                :        "||="       
-E4X_ATTRI                :        '@'               
-SEMI                        :        ';'               
-
-
-private DOT                        :        '.'                //declared in NUMBER
-private E4X_DESC        :        ".."        //declared in NUMBER
-private REST                :        "..."        //declared in NUMBER
-// an identifier. Note that testLiterals is set to true! This means
-// that after we match the rule, we look in the literals table to see
-// if it's a literal or really an identifer
-IDENT options {testLiterals=true;}
-        :        ('a'..'z'|'A'..'Z'|'_'|'$')
-        (        options {generateAmbigWarnings=false;}
-        :        'a'..'z'|'A'..'Z'|'_'|'0'..'9'|'$')*
-       
-
-STRING_LITERAL
-        :        '"' (ESC|~('"'|'\\'|'\n'|'\r'))* '"'
-        |        '\'' (ESC|~('\''|'\\'|'\n'|'\r'))* '\''
-       
-/* TODO: need a way to signal to the lexer that context allows XML literal to be recognised
-XML_LITERAL
-        :        '<' (WS)* IDENT (WS|XML_ATTRIBUTE)*
-                (        '>'
-                        (options {generateAmbigWarnings=false;}
-                        :WS|XML_LITERAL|XML_TEXTNODE|XML_COMMENT|XML_CDATA)*
-                        "</" (WS)* IDENT (WS)* '>'
-                |        "/>"
-                )
-                
-protected XML_ATTRIBUTE
-        :        IDENT (WS)* ASSIGN (WS)* STRING_LITERAL
-       
-        
-protected XML_TEXTNODE
-        :        (        options {generateAmbigWarnings=false;}
-                :        NL
-                |        { LA(2)!='>' }? '/'
-                |        ~('<'|'{'|'/'|'\n'|'\r')
-                )
-       
-protected XML_COMMENT
-        :        "<!--"
-                (options {generateAmbigWarnings=false;}
-                :        NL
-                |        ~('-'|'\n'|'\r')
-                |        { LA(2)!='-' }? '-'
-                )*
-                "-->"
-       
-protected XML_CDATA
-        :        "<![CDATA["
-                (options {generateAmbigWarnings=false;}
-                :        NL
-                |        { LA(2)!=']'}? ']'
-                |        ~(']'|'\n'|'\r')
-                )*
-                "]]>"
-       
-*/
-NUMBER {Token t=null;} // dot could start a number
-        :        "..." {_ttype = REST;}
-        |        ".." {_ttype = E4X_DESC;}
-        |        '.' {_ttype = DOT;} (('0'..'9')+ (EXPONENT)? {_ttype = NUMBER;})?
-        |        (        '0'
-                        (        ('X'|'x') (options {warnWhenFollowAmbig = false;}:HEX_DIGIT)+
-                        |        (('0'..'9')* ('.' ('0'..'9')+)? (EXPONENT)?)
-                        => ('0'..'9')* ('.' ('0'..'9')+)? (EXPONENT)?
-                        |        ('0'..'7')+
-                        )?
-                |        ('1'..'9') ('0'..'9')* ('.' ('0'..'9')+)? (EXPONENT)?
-                {_ttype = NUMBER;}
-                )
-       
-/* TODO: need a way to signal to the lexer that context allows regexp literal to be recognised
-REGEX_LITERAL
-        : '/'REGEX_BODY'/' ('a'..'z'|'A'..'Z'|'_'|'0'..'9'|'$')*
-       
-protected REGEX_BODY
-        :        (        (~('\n'|'\r'|'*'|'/'|'\\'))
-                |        '\\'(~('\n'|'\r'))
-                )
-                (        (~('\n'|'\r'|'/'|'\\'))
-                |        '\\'(~('\n'|'\r'))
-                )*
-       
-*/
-// whitespace -- ignored
-WS        :        (        options {generateAmbigWarnings=false;}
-                :        ' '
-                |        '\t'
-                |        '\f'
-                        // handle newlines
-                |        NL
-                )+
-       
-protected NL        
-        :        (        options {generateAmbigWarnings=false;}
-                :        '\r' '\n'         // DOS
-                |        '\r'         // Mac
-                |        '\n'         // Unix
-                )
-                { newline(); }
-       
-        
-// skip BOM bytes
-BOM        :        '\u00EF' '\u00BB' '\u00BF' { _ttype = Token.SKIP; };
-// single-line comments
-SL_COMMENT
-        :        "//" (~('\n'|'\r'))* ('\n'|'\r'('\n')?)?
-                {newline();}
-       
-// multiple-line comments
-ML_COMMENT
-        :        "/*"
-                (        options {generateAmbigWarnings=false;}
-                :
-                        { LA(2)!='/' }? '*'
-                |        NL
-                |        ~('*'|'\n'|'\r')
-                )*
-                "*/"
-       
-/* protected will not directly be
- * returned to the parser
- */
-protected EXPONENT
-        :        ('e'|'E') ('+'|'-')? ('0'..'9')+
-       
-protected HEX_DIGIT
-        :        ('0'..'9'|'A'..'F'|'a'..'f')
-       
-        
-protected ESC
-        :        '\\'
-                ('n'|'r'|'t'|'b'|'f'|'"'|'\''|'\\'
-                |        ('u')+ HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT
-                |        '0'..'3'
-                        ( options{warnWhenFollowAmbig = false;}
-                        :        '0'..'7'( options{warnWhenFollowAmbig = false;}:'0'..'7')?
-                        )?
-                |        '4'..'7'
-                        ( options{warnWhenFollowAmbig = false;}
-                        :        '0'..'7'
-                        )?
-                | .
-                )
-       
</pre><pre class="diff"><small id="info">\ No newline at end of file
</small></pre></div>
<center><small><a href="http://www.badgers-in-foil.co.uk/projects/cvsspam/" title="commit -> email">CVSspam</a> 0.2.12</small></center>
</body></html>