SmaCC__SmaCCGrammarParser.st
changeset 14 76468a870e05
parent 1 b8cca2663544
--- a/SmaCC__SmaCCGrammarParser.st	Mon Dec 14 15:05:39 2009 +0000
+++ b/SmaCC__SmaCCGrammarParser.st	Sat Dec 26 07:33:03 2009 +0000
@@ -20,74 +20,75 @@
 !SmaCCGrammarParser class methodsFor:'generated-accessing'!
 
 scannerClass
-	^SmaCCGrammarScanner
+	^SmaCC::SmaCCGrammarScanner
 ! !
 
 !SmaCCGrammarParser class methodsFor:'generated-comments'!
 
 parserDefinitionComment
 
-	"File:	Parser {grammar addEmptySymbol; yourself};
+	"File:   Parser {grammar addEmptySymbol; yourself};
 
-Parser:	Rule
-	| Parser Rule ;
+Parser: Rule
+        | Parser Rule ;
 
 Rule : ProductionRule {grammar setStartSymbolIfNone: '1'. nil}
-	| LeftLine 
-	| RightLine 
-	| NonAssociativeLine
-	| IdMethodLine
-	| StartLine ;
+        | LeftLine 
+        | RightLine 
+        | NonAssociativeLine
+        | IdMethodLine
+        | StartLine ;
 
-LeftLine:	""%left"" TokenList 'tokens' "";"" { tokens do: [:each | grammar leftPrecedenceFor: each; setOperatorPrecedenceFor: each to: scanner lineNumber]. nil };
-RightLine:	""%right"" TokenList 'tokens' "";"" { tokens do: [:each | grammar rightPrecedenceFor: each; setOperatorPrecedenceFor: each to: scanner lineNumber]. nil };
+LeftLine:       ""%left"" TokenList 'tokens' "";"" { tokens do: [:each | grammar leftPrecedenceFor: each; setOperatorPrecedenceFor: each to: scanner lineNumber]. nil };
+RightLine:      ""%right"" TokenList 'tokens' "";"" { tokens do: [:each | grammar rightPrecedenceFor: each; setOperatorPrecedenceFor: each to: scanner lineNumber]. nil };
 NonAssociativeLine: ""%nonassoc"" TokenList 'tokens' "";"" { tokens do: [:each | grammar nonAssociativePrecedenceFor: each; setOperatorPrecedenceFor: each to: scanner lineNumber]. nil };
 IdMethodLine: ""%id"" IdTokens 'tokens' "";"" {tokens do: [:each | grammar makeTokenIdMethodFor: each]. nil};
 StartLine: ""%start"" StartingTokens "";"";
 
 IdTokens: <tokenname> {OrderedCollection with: '1' value}
-	| IdTokens <tokenname> {'1' add: '2' value; yourself};
-TokenList:	Term
-	| TokenList Term	;
+        | IdTokens <tokenname> {'1' add: '2' value; yourself};
+TokenList:      Term
+        | TokenList Term        ;
 StartingTokens: <symbolname> 'symbol' {grammar addStartingSymbol: (grammar nonTerminalSymbolNamed: symbol value)}
-	| StartingTokens <symbolname> 'symbol' {grammar addStartingSymbol: (grammar nonTerminalSymbolNamed: symbol value)};
+        | StartingTokens <symbolname> 'symbol' {grammar addStartingSymbol: (grammar nonTerminalSymbolNamed: symbol value)};
 
 ProductionRule: <symbolname> <production> ParserRules "";"" {| symbol | symbol := grammar nonTerminalSymbolNamed: '1' value. '3' do: [:each | symbol addProduction: each]. symbol};
 
-ParserRules:	ParserRules ""|"" ParserRule {'1' add: '3'; yourself}
-	| ParserRule	 ;
+ParserRules:    ParserRules ""|"" ParserRule {'1' add: '3'; yourself}
+        | ParserRule     ;
 
 ParserRule : Terms 'rhs' {rhs}
-	| Terms 'rhs' <code> 'code' {self verifyCodeToken: code for: rhs} ;
+        | Terms 'rhs' <code> 'code' {self verifyCodeToken: code for: rhs} ;
 
-Terms :	{SmaCCRHS new}
-	| Terms 'rhs' Term 'term'	{rhs add: term; yourself}	
-	| Terms 'rhs' Term 'term' <variablename> 'variableNameToken'	{rhs add: term; nameLastItem: (variableNameToken value copyFrom: 2 to: variableNameToken value size - 1); yourself}	
-	| Terms 'rhs' Term 'term' ""?"" {rhs add: (grammar makeOptionalSymbolFor: term); yourself}
-	| Terms 'rhs' Term 'term' ""?"" <variablename> 'variableNameToken' {rhs add: (grammar makeOptionalSymbolFor: term); nameLastItem: (variableNameToken value copyFrom: 2 to: variableNameToken value size - 1); yourself}	
-	| Terms 'rhs' Term 'term' ""*"" {rhs add: (grammar makeRepeatSymbolFor: term); yourself}
-	| Terms 'rhs' Term 'term' ""*"" <variablename> 'variableNameToken' {rhs add: (grammar makeRepeatSymbolFor: term); nameLastItem: (variableNameToken value copyFrom: 2 to: variableNameToken value size - 1); yourself}		
-	| Terms 'rhs' Term 'term' ""+"" {rhs add: (grammar makeRepeatMultipleSymbolFor: term); yourself}
-	| Terms 'rhs' Term 'term' ""+"" <variablename> 'variableNameToken' {rhs add: (grammar makeRepeatMultipleSymbolFor: term); nameLastItem: (variableNameToken value copyFrom: 2 to: variableNameToken value size - 1); yourself}	;
+Terms : {SmaCCRHS new}
+        | Terms 'rhs' Term 'term'       {rhs add: term; yourself}       
+        | Terms 'rhs' Term 'term' <variablename> 'variableNameToken'    {rhs add: term; nameLastItem: (variableNameToken value copyFrom: 2 to: variableNameToken value size - 1); yourself}     
+        | Terms 'rhs' Term 'term' ""?"" {rhs add: (grammar makeOptionalSymbolFor: term); yourself}
+        | Terms 'rhs' Term 'term' ""?"" <variablename> 'variableNameToken' {rhs add: (grammar makeOptionalSymbolFor: term); nameLastItem: (variableNameToken value copyFrom: 2 to: variableNameToken value size - 1); yourself}   
+        | Terms 'rhs' Term 'term' ""*"" {rhs add: (grammar makeRepeatSymbolFor: term); yourself}
+        | Terms 'rhs' Term 'term' ""*"" <variablename> 'variableNameToken' {rhs add: (grammar makeRepeatSymbolFor: term); nameLastItem: (variableNameToken value copyFrom: 2 to: variableNameToken value size - 1); yourself}             
+        | Terms 'rhs' Term 'term' ""+"" {rhs add: (grammar makeRepeatMultipleSymbolFor: term); yourself}
+        | Terms 'rhs' Term 'term' ""+"" <variablename> 'variableNameToken' {rhs add: (grammar makeRepeatMultipleSymbolFor: term); nameLastItem: (variableNameToken value copyFrom: 2 to: variableNameToken value size - 1); yourself}     ;
 
-Term:	<keyword> {grammar keywordTerminalNamed: '1' value}
-	| <tokenname> {grammar terminalSymbolNamed: '1' value ifAbsent: [currentToken := '1'. self reportErrorMessage: 'Token not specified']}
-	| <symbolname> {grammar nonTerminalSymbolNamed: '1' value}
-	| ""error"" {SmaCCSymbol error}
-	| ""("" SimpleTerms "")"" {grammar makeGroupFor: '2'}
-	| ""<%"" SimpleTerms ""%>"" {grammar makeRepeatSymbolFor: (grammar makeGroupFor: '2')}
-	| ""["" SimpleTerms ""]"" {grammar makeOptionalSymbolFor: (grammar makeGroupFor: '2')};
+Term:   <keyword> {grammar keywordTerminalNamed: '1' value}
+        | <tokenname> {grammar terminalSymbolNamed: '1' value ifAbsent: [currentToken := '1'. self reportErrorMessage: 'Token not specified']}
+        | <symbolname> {grammar nonTerminalSymbolNamed: '1' value}
+        | ""error"" {SmaCCSymbol error}
+        | ""("" SimpleTerms "")"" {grammar makeGroupFor: '2'}
+        | ""<%"" SimpleTerms ""%>"" {grammar makeRepeatSymbolFor: (grammar makeGroupFor: '2')}
+        | ""["" SimpleTerms ""]"" {grammar makeOptionalSymbolFor: (grammar makeGroupFor: '2')};
 
 SimpleTerms :
-	SimpleTerm {OrderedCollection with: '1'}
-	| SimpleTerms 'terms' ""|"" SimpleTerm 'term' {terms add: term; yourself};
+        SimpleTerm {OrderedCollection with: '1'}
+        | SimpleTerms 'terms' ""|"" SimpleTerm 'term' {terms add: term; yourself};
 
 SimpleTerm :
-	{ SmaCCRHS new }
-	| SimpleTerm 'rhs' Term 'term' {rhs add: term; yourself} 
-	| SimpleTerm 'rhs' Term 'term' ""?"" {rhs add: (grammar makeOptionalSymbolFor: term); yourself}
-	| SimpleTerm 'rhs' Term 'term' ""*"" {rhs add: (grammar makeRepeatSymbolFor: term); yourself}
-	| SimpleTerm 'rhs' Term 'term' ""+"" {rhs add: (grammar makeRepeatMultipleSymbolFor: term); yourself}	;"
+        { SmaCCRHS new }
+        | SimpleTerm 'rhs' Term 'term' {rhs add: term; yourself} 
+        | SimpleTerm 'rhs' Term 'term' ""?"" {rhs add: (grammar makeOptionalSymbolFor: term); yourself}
+        | SimpleTerm 'rhs' Term 'term' ""*"" {rhs add: (grammar makeRepeatSymbolFor: term); yourself}
+        | SimpleTerm 'rhs' Term 'term' ""+"" {rhs add: (grammar makeRepeatMultipleSymbolFor: term); yourself}     ;
+"
 ! !
 
 !SmaCCGrammarParser class methodsFor:'generated-starting states'!
@@ -108,340 +109,352 @@
 
 !SmaCCGrammarParser methodsFor:'generated-reduction actions'!
 
-reduceActionForFile1: nodes
-	^grammar
-		addEmptySymbol;
-		yourself
+reduceActionForFile1:nodes 
+    ^ grammar
+        addEmptySymbol;
+        yourself
 !
 
-reduceActionForIdMethodLine1: nodes
-	(nodes at: 2) do: [:each | grammar makeTokenIdMethodFor: each].
-	^nil
+reduceActionForIdMethodLine1:nodes 
+    (nodes at:2) do:[:each | 
+        grammar makeTokenIdMethodFor:each
+    ].
+    ^ nil
 !
 
-reduceActionForIdTokens1: nodes
-	^OrderedCollection with: (nodes at: 1) value
+reduceActionForIdTokens1:nodes 
+    ^ OrderedCollection with:(nodes at:1) value
 !
 
-reduceActionForIdTokens2: nodes
-	^(nodes at: 1)
-		add: (nodes at: 2) value;
-		yourself
+reduceActionForIdTokens2:nodes 
+    ^ (nodes at:1)
+        add:(nodes at:2) value;
+        yourself
 !
 
-reduceActionForLeftLine1: nodes
-	(nodes at: 2) do: 
-			[:each | 
-			grammar
-				leftPrecedenceFor: each;
-				setOperatorPrecedenceFor: each to: scanner lineNumber].
-	^nil
+reduceActionForLeftLine1:nodes 
+    (nodes at:2) do:[:each | 
+        grammar
+            leftPrecedenceFor:each;
+            setOperatorPrecedenceFor:each to:scanner lineNumber
+    ].
+    ^ nil
 !
 
-reduceActionForNonAssociativeLine1: nodes
-	(nodes at: 2) do: 
-			[:each | 
-			grammar
-				nonAssociativePrecedenceFor: each;
-				setOperatorPrecedenceFor: each to: scanner lineNumber].
-	^nil
+reduceActionForNonAssociativeLine1:nodes 
+    (nodes at:2) do:[:each | 
+        grammar
+            nonAssociativePrecedenceFor:each;
+            setOperatorPrecedenceFor:each to:scanner lineNumber
+    ].
+    ^ nil
 !
 
-reduceActionForParserRule1: nodes
-	^nodes at: 1
+reduceActionForParserRule1:nodes 
+    ^ nodes at:1
 !
 
-reduceActionForParserRule2: nodes
-	^self verifyCodeToken: (nodes at: 2) for: (nodes at: 1)
+reduceActionForParserRule2:nodes 
+    ^ self verifyCodeToken:(nodes at:2) for:(nodes at:1)
 !
 
-reduceActionForParserRules1: nodes
-	^(nodes at: 1)
-		add: (nodes at: 3);
-		yourself
-!
-
-reduceActionForProductionRule1: nodes
-	| symbol |
-	symbol := grammar nonTerminalSymbolNamed: (nodes at: 1) value.
-	(nodes at: 3) do: [:each | symbol addProduction: each].
-	^symbol
+reduceActionForParserRules1:nodes 
+    ^ (nodes at:1)
+        add:(nodes at:3);
+        yourself
 !
 
-reduceActionForRightLine1: nodes
-	(nodes at: 2) do: 
-			[:each | 
-			grammar
-				rightPrecedenceFor: each;
-				setOperatorPrecedenceFor: each to: scanner lineNumber].
-	^nil
+reduceActionForProductionRule1:nodes 
+    |symbol|
+
+    symbol := grammar nonTerminalSymbolNamed:(nodes at:1) value.
+    (nodes at:3) do:[:each | 
+        symbol addProduction:each
+    ].
+    ^ symbol
 !
 
-reduceActionForRule1: nodes
-	grammar setStartSymbolIfNone: (nodes at: 1).
-	^nil
+reduceActionForRightLine1:nodes 
+    (nodes at:2) do:[:each | 
+        grammar
+            rightPrecedenceFor:each;
+            setOperatorPrecedenceFor:each to:scanner lineNumber
+    ].
+    ^ nil
 !
 
-reduceActionForSimpleTerm1: nodes
-	^SmaCCRHS new
+reduceActionForRule1:nodes 
+    grammar setStartSymbolIfNone:(nodes at:1).
+    ^ nil
 !
 
-reduceActionForSimpleTerm2: nodes
-	^(nodes at: 1)
-		add: (nodes at: 2);
-		yourself
+reduceActionForSimpleTerm1:nodes 
+    ^ SmaCCRHS new
+!
+
+reduceActionForSimpleTerm2:nodes 
+    ^ (nodes at:1)
+        add:(nodes at:2);
+        yourself
 !
 
-reduceActionForSimpleTerm3: nodes
-	^(nodes at: 1)
-		add: (grammar makeOptionalSymbolFor: (nodes at: 2));
-		yourself
+reduceActionForSimpleTerm3:nodes 
+    ^ (nodes at:1)
+        add:(grammar makeOptionalSymbolFor:(nodes at:2));
+        yourself
 !
 
-reduceActionForSimpleTerm4: nodes
-	^(nodes at: 1)
-		add: (grammar makeRepeatSymbolFor: (nodes at: 2));
-		yourself
+reduceActionForSimpleTerm4:nodes 
+    ^ (nodes at:1)
+        add:(grammar makeRepeatSymbolFor:(nodes at:2));
+        yourself
 !
 
-reduceActionForSimpleTerm5: nodes
-	^(nodes at: 1)
-		add: (grammar makeRepeatMultipleSymbolFor: (nodes at: 2));
-		yourself
+reduceActionForSimpleTerm5:nodes 
+    ^ (nodes at:1)
+        add:(grammar makeRepeatMultipleSymbolFor:(nodes at:2));
+        yourself
 !
 
-reduceActionForSimpleTerms1: nodes
-	^OrderedCollection with: (nodes at: 1)
+reduceActionForSimpleTerms1:nodes 
+    ^ OrderedCollection with:(nodes at:1)
 !
 
-reduceActionForSimpleTerms2: nodes
-	^(nodes at: 1)
-		add: (nodes at: 3);
-		yourself
+reduceActionForSimpleTerms2:nodes 
+    ^ (nodes at:1)
+        add:(nodes at:3);
+        yourself
 !
 
-reduceActionForStartingTokens1: nodes
-	^grammar addStartingSymbol: (grammar nonTerminalSymbolNamed: (nodes at: 1) value)
+reduceActionForStartingTokens1:nodes 
+    ^ grammar 
+        addStartingSymbol:(grammar nonTerminalSymbolNamed:(nodes at:1) value)
 !
 
-reduceActionForStartingTokens2: nodes
-	^grammar addStartingSymbol: (grammar nonTerminalSymbolNamed: (nodes at: 2) value)
+reduceActionForStartingTokens2:nodes 
+    ^ grammar 
+        addStartingSymbol:(grammar nonTerminalSymbolNamed:(nodes at:2) value)
 !
 
-reduceActionForTerm1: nodes
-	^grammar keywordTerminalNamed: (nodes at: 1) value
+reduceActionForTerm1:nodes 
+    ^ grammar keywordTerminalNamed:(nodes at:1) value
 !
 
-reduceActionForTerm2: nodes
-	^grammar terminalSymbolNamed: (nodes at: 1) value
-		ifAbsent: 
-			[currentToken := nodes at: 1.
-			self reportErrorMessage: 'Token not specified']
+reduceActionForTerm2:nodes 
+    ^ grammar terminalSymbolNamed:(nodes at:1) value
+        ifAbsent:[
+            currentToken := nodes at:1.
+            self reportErrorMessage:'Token not specified'
+        ]
 !
 
-reduceActionForTerm3: nodes
-	^grammar nonTerminalSymbolNamed: (nodes at: 1) value
+reduceActionForTerm3:nodes 
+    ^ grammar nonTerminalSymbolNamed:(nodes at:1) value
 !
 
-reduceActionForTerm4: nodes
-	^SmaCCSymbol error
+reduceActionForTerm4:nodes 
+    ^ SmaCCSymbol error
 !
 
-reduceActionForTerm5: nodes
-	^grammar makeGroupFor: (nodes at: 2)
+reduceActionForTerm5:nodes 
+    ^ grammar makeGroupFor:(nodes at:2)
 !
 
-reduceActionForTerm6: nodes
-	^grammar makeRepeatSymbolFor: (grammar makeGroupFor: (nodes at: 2))
+reduceActionForTerm6:nodes 
+    ^ grammar makeRepeatSymbolFor:(grammar makeGroupFor:(nodes at:2))
 !
 
-reduceActionForTerm7: nodes
-	^grammar makeOptionalSymbolFor: (grammar makeGroupFor: (nodes at: 2))
+reduceActionForTerm7:nodes 
+    ^ grammar makeOptionalSymbolFor:(grammar makeGroupFor:(nodes at:2))
 !
 
-reduceActionForTerms1: nodes
-	^SmaCCRHS new
+reduceActionForTerms1:nodes 
+    ^ SmaCCRHS new
 !
 
-reduceActionForTerms2: nodes
-	^(nodes at: 1)
-		add: (nodes at: 2);
-		yourself
+reduceActionForTerms2:nodes 
+    ^ (nodes at:1)
+        add:(nodes at:2);
+        yourself
 !
 
-reduceActionForTerms3: nodes
-	^(nodes at: 1)
-		add: (nodes at: 2);
-		nameLastItem: ((nodes at: 3) value copyFrom: 2 to: (nodes at: 3) value size - 1);
-		yourself
+reduceActionForTerms3:nodes 
+    ^ (nodes at:1)
+        add:(nodes at:2);
+        nameLastItem:((nodes at:3) value copyFrom:2
+                    to:(nodes at:3) value size - 1);
+        yourself
 !
 
-reduceActionForTerms4: nodes
-	^(nodes at: 1)
-		add: (grammar makeOptionalSymbolFor: (nodes at: 2));
-		yourself
+reduceActionForTerms4:nodes 
+    ^ (nodes at:1)
+        add:(grammar makeOptionalSymbolFor:(nodes at:2));
+        yourself
 !
 
-reduceActionForTerms5: nodes
-	^(nodes at: 1)
-		add: (grammar makeOptionalSymbolFor: (nodes at: 2));
-		nameLastItem: ((nodes at: 4) value copyFrom: 2 to: (nodes at: 4) value size - 1);
-		yourself
+reduceActionForTerms5:nodes 
+    ^ (nodes at:1)
+        add:(grammar makeOptionalSymbolFor:(nodes at:2));
+        nameLastItem:((nodes at:4) value copyFrom:2
+                    to:(nodes at:4) value size - 1);
+        yourself
 !
 
-reduceActionForTerms6: nodes
-	^(nodes at: 1)
-		add: (grammar makeRepeatSymbolFor: (nodes at: 2));
-		yourself
+reduceActionForTerms6:nodes 
+    ^ (nodes at:1)
+        add:(grammar makeRepeatSymbolFor:(nodes at:2));
+        yourself
 !
 
-reduceActionForTerms7: nodes
-	^(nodes at: 1)
-		add: (grammar makeRepeatSymbolFor: (nodes at: 2));
-		nameLastItem: ((nodes at: 4) value copyFrom: 2 to: (nodes at: 4) value size - 1);
-		yourself
+reduceActionForTerms7:nodes 
+    ^ (nodes at:1)
+        add:(grammar makeRepeatSymbolFor:(nodes at:2));
+        nameLastItem:((nodes at:4) value copyFrom:2
+                    to:(nodes at:4) value size - 1);
+        yourself
 !
 
-reduceActionForTerms8: nodes
-	^(nodes at: 1)
-		add: (grammar makeRepeatMultipleSymbolFor: (nodes at: 2));
-		yourself
+reduceActionForTerms8:nodes 
+    ^ (nodes at:1)
+        add:(grammar makeRepeatMultipleSymbolFor:(nodes at:2));
+        yourself
 !
 
-reduceActionForTerms9: nodes
-	^(nodes at: 1)
-		add: (grammar makeRepeatMultipleSymbolFor: (nodes at: 2));
-		nameLastItem: ((nodes at: 4) value copyFrom: 2 to: (nodes at: 4) value size - 1);
-		yourself
+reduceActionForTerms9:nodes 
+    ^ (nodes at:1)
+        add:(grammar makeRepeatMultipleSymbolFor:(nodes at:2));
+        nameLastItem:((nodes at:4) value copyFrom:2
+                    to:(nodes at:4) value size - 1);
+        yourself
 ! !
 
 !SmaCCGrammarParser methodsFor:'generated-tables'!
 
 reduceTable
 	^#(
-#(26 1 #reduceActionForTerm1:)
-#(26 1 #reduceActionForTerm2:)
-#(26 1 #reduceActionForTerm3:)
-#(26 1 #reduceActionForTerm4:)
-#(26 3 #reduceActionForTerm5:)
-#(26 3 #reduceActionForTerm6:)
-#(26 3 #reduceActionForTerm7:)
-#(27 1 #reduceActionForRule1:)
-#(27 1 #reduceFor:)
-#(27 1 #reduceFor:)
-#(27 1 #reduceFor:)
-#(27 1 #reduceFor:)
-#(27 1 #reduceFor:)
-#(28 1 #reduceActionForIdTokens1:)
-#(28 2 #reduceActionForIdTokens2:)
-#(29 3 #reduceFor:)
-#(30 3 #reduceActionForIdMethodLine1:)
+#(26 3 #reduceActionForIdMethodLine1:)
+#(27 3 #reduceFor:)
+#(28 1 #reduceFor:)
+#(28 2 #reduceFor:)
+#(29 4 #reduceActionForProductionRule1:)
+#(30 3 #reduceActionForRightLine1:)
+#(31 1 #reduceActionForRule1:)
+#(31 1 #reduceFor:)
+#(31 1 #reduceFor:)
+#(31 1 #reduceFor:)
+#(31 1 #reduceFor:)
 #(31 1 #reduceFor:)
-#(32 1 #reduceFor:)
-#(32 2 #reduceFor:)
-#(33 3 #reduceActionForRightLine1:)
-#(34 3 #reduceActionForParserRules1:)
-#(34 1 #reduceFor:)
-#(35 1 #reduceActionForParserRule1:)
-#(35 2 #reduceActionForParserRule2:)
-#(36 0 #reduceActionForTerms1:)
-#(36 2 #reduceActionForTerms2:)
-#(36 3 #reduceActionForTerms3:)
-#(36 3 #reduceActionForTerms4:)
-#(36 4 #reduceActionForTerms5:)
-#(36 3 #reduceActionForTerms6:)
-#(36 4 #reduceActionForTerms7:)
-#(36 3 #reduceActionForTerms8:)
-#(36 4 #reduceActionForTerms9:)
-#(37 1 #reduceActionForStartingTokens1:)
-#(37 2 #reduceActionForStartingTokens2:)
-#(38 3 #reduceActionForNonAssociativeLine1:)
-#(39 1 #reduceActionForFile1:)
-#(40 1 #reduceActionForSimpleTerms1:)
-#(40 3 #reduceActionForSimpleTerms2:)
-#(41 0 #reduceActionForSimpleTerm1:)
-#(41 2 #reduceActionForSimpleTerm2:)
-#(41 3 #reduceActionForSimpleTerm3:)
-#(41 3 #reduceActionForSimpleTerm4:)
-#(41 3 #reduceActionForSimpleTerm5:)
-#(44 1 #reduceFor:)
-#(44 2 #reduceFor:)
-#(45 3 #reduceActionForLeftLine1:)
-#(46 4 #reduceActionForProductionRule1:)
+#(32 1 #reduceActionForTerm1:)
+#(32 1 #reduceActionForTerm2:)
+#(32 1 #reduceActionForTerm3:)
+#(32 1 #reduceActionForTerm4:)
+#(32 3 #reduceActionForTerm5:)
+#(32 3 #reduceActionForTerm6:)
+#(32 3 #reduceActionForTerm7:)
+#(33 1 #reduceFor:)
+#(34 3 #reduceActionForNonAssociativeLine1:)
+#(35 3 #reduceActionForParserRules1:)
+#(35 1 #reduceFor:)
+#(36 1 #reduceActionForParserRule1:)
+#(36 2 #reduceActionForParserRule2:)
+#(37 0 #reduceActionForTerms1:)
+#(37 2 #reduceActionForTerms2:)
+#(37 3 #reduceActionForTerms3:)
+#(37 3 #reduceActionForTerms4:)
+#(37 4 #reduceActionForTerms5:)
+#(37 3 #reduceActionForTerms6:)
+#(37 4 #reduceActionForTerms7:)
+#(37 3 #reduceActionForTerms8:)
+#(37 4 #reduceActionForTerms9:)
+#(38 1 #reduceActionForStartingTokens1:)
+#(38 2 #reduceActionForStartingTokens2:)
+#(39 1 #reduceFor:)
+#(39 2 #reduceFor:)
+#(40 1 #reduceActionForIdTokens1:)
+#(40 2 #reduceActionForIdTokens2:)
+#(41 1 #reduceActionForSimpleTerms1:)
+#(41 3 #reduceActionForSimpleTerms2:)
+#(42 0 #reduceActionForSimpleTerm1:)
+#(42 2 #reduceActionForSimpleTerm2:)
+#(42 3 #reduceActionForSimpleTerm3:)
+#(42 3 #reduceActionForSimpleTerm4:)
+#(42 3 #reduceActionForSimpleTerm5:)
+#(45 1 #reduceActionForFile1:)
+#(46 3 #reduceActionForLeftLine1:)
 )
 !
 
 transitionTable
 	^#(
-#[1 0 9 0 1 0 13 0 3 0 17 0 5 0 21 0 7 0 25 0 8 0 29 0 20 0 33 0 27 0 37 0 29 0 41 0 30 0 45 0 33 0 49 0 38 0 53 0 39 0 57 0 44 0 61 0 45 0 65 0 46]
-#[1 0 69 0 9 0 73 0 13 0 77 0 15 0 81 0 16 0 85 0 19 0 89 0 20 0 93 0 21 0 97 0 26 0 101 0 32]
-#[1 0 105 0 19 0 109 0 28]
-#[1 0 69 0 9 0 73 0 13 0 77 0 15 0 81 0 16 0 85 0 19 0 89 0 20 0 93 0 21 0 97 0 26 0 113 0 32]
-#[1 0 69 0 9 0 73 0 13 0 77 0 15 0 81 0 16 0 85 0 19 0 89 0 20 0 93 0 21 0 97 0 26 0 117 0 32]
-#[1 0 121 0 20 0 125 0 37]
+#[1 0 9 0 1 0 13 0 3 0 17 0 4 0 21 0 6 0 25 0 8 0 29 0 20 0 33 0 26 0 37 0 27 0 41 0 29 0 45 0 30 0 49 0 31 0 53 0 34 0 57 0 39 0 61 0 45 0 65 0 46]
+#[1 0 69 0 20 0 73 0 38]
+#[1 0 77 0 11 0 81 0 13 0 85 0 16 0 89 0 17 0 93 0 19 0 97 0 20 0 101 0 21 0 105 0 28 0 109 0 32]
+#[1 0 113 0 19 0 117 0 40]
+#[1 0 77 0 11 0 81 0 13 0 85 0 16 0 89 0 17 0 93 0 19 0 97 0 20 0 101 0 21 0 121 0 28 0 109 0 32]
+#[1 0 77 0 11 0 81 0 13 0 85 0 16 0 89 0 17 0 93 0 19 0 97 0 20 0 101 0 21 0 125 0 28 0 109 0 32]
 #[0 0 129 0 25]
-#[0 0 186 0 1 0 3 0 5 0 7 0 8 0 20 0 42]
-#[0 0 54 0 1 0 3 0 5 0 7 0 8 0 20 0 42]
-#[0 0 50 0 1 0 3 0 5 0 7 0 8 0 20 0 42]
-#[0 0 42 0 1 0 3 0 5 0 7 0 8 0 20 0 42]
-#[0 0 46 0 1 0 3 0 5 0 7 0 8 0 20 0 42]
-#[0 0 0 0 42]
-#[1 0 9 0 1 0 13 0 3 0 17 0 5 0 21 0 7 0 25 0 8 0 29 0 20 0 133 0 27 0 37 0 29 0 41 0 30 0 45 0 33 0 49 0 38 0 154 0 42 0 61 0 45 0 65 0 46]
-#[0 0 38 0 1 0 3 0 5 0 7 0 8 0 20 0 42]
-#[0 0 34 0 1 0 3 0 5 0 7 0 8 0 20 0 42]
-#[1 0 166 0 4 0 166 0 6 0 166 0 9 0 166 0 13 0 166 0 15 0 166 0 16 0 166 0 19 0 166 0 20 0 166 0 21 0 137 0 40 0 141 0 41]
-#[1 0 166 0 6 0 166 0 9 0 166 0 12 0 166 0 13 0 166 0 15 0 166 0 16 0 166 0 19 0 166 0 20 0 166 0 21 0 145 0 40 0 141 0 41]
-#[0 0 18 0 2 0 4 0 6 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 19 0 20 0 21 0 23 0 24]
-#[1 0 166 0 6 0 166 0 9 0 166 0 11 0 166 0 13 0 166 0 15 0 166 0 16 0 166 0 19 0 166 0 20 0 166 0 21 0 149 0 40 0 141 0 41]
-#[0 0 10 0 2 0 4 0 6 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 19 0 20 0 21 0 23 0 24]
-#[0 0 14 0 2 0 4 0 6 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 19 0 20 0 21 0 23 0 24]
-#[0 0 6 0 2 0 4 0 6 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 19 0 20 0 21 0 23 0 24]
-#[0 0 78 0 2 0 9 0 13 0 15 0 16 0 19 0 20 0 21]
-#[1 0 153 0 2 0 69 0 9 0 73 0 13 0 77 0 15 0 81 0 16 0 85 0 19 0 89 0 20 0 93 0 21 0 157 0 26]
-#[0 0 58 0 2 0 19]
-#[1 0 161 0 2 0 165 0 19]
-#[1 0 169 0 2 0 69 0 9 0 73 0 13 0 77 0 15 0 81 0 16 0 85 0 19 0 89 0 20 0 93 0 21 0 157 0 26]
-#[1 0 173 0 2 0 69 0 9 0 73 0 13 0 77 0 15 0 81 0 16 0 85 0 19 0 89 0 20 0 93 0 21 0 157 0 26]
-#[0 0 142 0 2 0 20]
-#[1 0 177 0 2 0 181 0 20]
-#[1 0 106 0 2 0 106 0 6 0 106 0 9 0 106 0 13 0 106 0 15 0 106 0 16 0 106 0 19 0 106 0 20 0 106 0 21 0 106 0 23 0 185 0 34 0 189 0 35 0 193 0 36]
-#[0 0 190 0 1 0 3 0 5 0 7 0 8 0 20 0 42]
-#[1 0 197 0 4 0 201 0 6]
-#[1 0 158 0 4 0 158 0 6 0 69 0 9 0 158 0 11 0 158 0 12 0 73 0 13 0 77 0 15 0 81 0 16 0 85 0 19 0 89 0 20 0 93 0 21 0 205 0 26]
-#[1 0 201 0 6 0 209 0 12]
-#[1 0 201 0 6 0 213 0 11]
-#[0 0 150 0 1 0 3 0 5 0 7 0 8 0 20 0 42]
-#[0 0 82 0 2 0 9 0 13 0 15 0 16 0 19 0 20 0 21]
-#[0 0 70 0 1 0 3 0 5 0 7 0 8 0 20 0 42]
-#[0 0 62 0 2 0 19]
-#[0 0 86 0 1 0 3 0 5 0 7 0 8 0 20 0 42]
-#[0 0 194 0 1 0 3 0 5 0 7 0 8 0 20 0 42]
-#[0 0 66 0 1 0 3 0 5 0 7 0 8 0 20 0 42]
-#[0 0 146 0 2 0 20]
-#[1 0 217 0 2 0 221 0 6]
-#[0 0 94 0 2 0 6]
-#[1 0 98 0 2 0 98 0 6 0 69 0 9 0 73 0 13 0 77 0 15 0 81 0 16 0 85 0 19 0 89 0 20 0 93 0 21 0 225 0 23 0 229 0 26]
-#[0 0 30 0 2 0 4 0 6 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 19 0 20 0 21 0 23 0 24]
-#[1 0 166 0 4 0 166 0 6 0 166 0 9 0 166 0 11 0 166 0 12 0 166 0 13 0 166 0 15 0 166 0 16 0 166 0 19 0 166 0 20 0 166 0 21 0 233 0 41]
-#[1 0 170 0 4 0 170 0 6 0 170 0 9 0 237 0 10 0 170 0 11 0 170 0 12 0 170 0 13 0 241 0 14 0 170 0 15 0 170 0 16 0 245 0 17 0 170 0 19 0 170 0 20 0 170 0 21]
-#[0 0 26 0 2 0 4 0 6 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 19 0 20 0 21 0 23 0 24]
-#[0 0 22 0 2 0 4 0 6 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 19 0 20 0 21 0 23 0 24]
-#[0 0 198 0 1 0 3 0 5 0 7 0 8 0 20 0 42]
-#[1 0 106 0 2 0 106 0 6 0 106 0 9 0 106 0 13 0 106 0 15 0 106 0 16 0 106 0 19 0 106 0 20 0 106 0 21 0 106 0 23 0 249 0 35 0 193 0 36]
-#[0 0 102 0 2 0 6]
-#[1 0 110 0 2 0 110 0 6 0 110 0 9 0 253 0 10 0 110 0 13 1 1 0 14 0 110 0 15 0 110 0 16 1 5 0 17 0 110 0 19 0 110 0 20 0 110 0 21 0 110 0 23 1 9 0 24]
-#[1 0 162 0 4 0 162 0 6 0 69 0 9 0 162 0 11 0 162 0 12 0 73 0 13 0 77 0 15 0 81 0 16 0 85 0 19 0 89 0 20 0 93 0 21 0 205 0 26]
-#[0 0 178 0 4 0 6 0 9 0 11 0 12 0 13 0 15 0 16 0 19 0 20 0 21]
-#[0 0 174 0 4 0 6 0 9 0 11 0 12 0 13 0 15 0 16 0 19 0 20 0 21]
-#[0 0 182 0 4 0 6 0 9 0 11 0 12 0 13 0 15 0 16 0 19 0 20 0 21]
-#[0 0 90 0 2 0 6]
-#[1 0 126 0 2 0 126 0 6 0 126 0 9 0 126 0 13 0 126 0 15 0 126 0 16 0 126 0 19 0 126 0 20 0 126 0 21 0 126 0 23 1 13 0 24]
-#[1 0 118 0 2 0 118 0 6 0 118 0 9 0 118 0 13 0 118 0 15 0 118 0 16 0 118 0 19 0 118 0 20 0 118 0 21 0 118 0 23 1 17 0 24]
-#[1 0 134 0 2 0 134 0 6 0 134 0 9 0 134 0 13 0 134 0 15 0 134 0 16 0 134 0 19 0 134 0 20 0 134 0 21 0 134 0 23 1 21 0 24]
-#[0 0 114 0 2 0 6 0 9 0 13 0 15 0 16 0 19 0 20 0 21 0 23]
-#[0 0 130 0 2 0 6 0 9 0 13 0 15 0 16 0 19 0 20 0 21 0 23]
-#[0 0 122 0 2 0 6 0 9 0 13 0 15 0 16 0 19 0 20 0 21 0 23]
-#[0 0 138 0 2 0 6 0 9 0 13 0 15 0 16 0 19 0 20 0 21 0 23]
+#[0 0 46 0 1 0 3 0 4 0 6 0 8 0 20 0 43]
+#[0 0 50 0 1 0 3 0 4 0 6 0 8 0 20 0 43]
+#[0 0 30 0 1 0 3 0 4 0 6 0 8 0 20 0 43]
+#[0 0 38 0 1 0 3 0 4 0 6 0 8 0 20 0 43]
+#[0 0 150 0 1 0 3 0 4 0 6 0 8 0 20 0 43]
+#[0 0 42 0 1 0 3 0 4 0 6 0 8 0 20 0 43]
+#[1 0 9 0 1 0 13 0 3 0 17 0 4 0 21 0 6 0 25 0 8 0 29 0 20 0 33 0 26 0 37 0 27 0 41 0 29 0 45 0 30 0 133 0 31 0 53 0 34 0 194 0 43 0 65 0 46]
+#[0 0 0 0 43]
+#[0 0 34 0 1 0 3 0 4 0 6 0 8 0 20 0 43]
+#[0 0 142 0 7 0 20]
+#[1 0 137 0 7 0 141 0 20]
+#[1 0 174 0 2 0 174 0 11 0 174 0 13 0 174 0 14 0 174 0 16 0 174 0 17 0 174 0 19 0 174 0 20 0 174 0 21 0 145 0 41 0 149 0 42]
+#[1 0 174 0 2 0 174 0 10 0 174 0 11 0 174 0 13 0 174 0 16 0 174 0 17 0 174 0 19 0 174 0 20 0 174 0 21 0 153 0 41 0 149 0 42]
+#[0 0 66 0 2 0 5 0 7 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 19 0 20 0 21 0 23 0 24]
+#[1 0 174 0 2 0 174 0 11 0 174 0 12 0 174 0 13 0 174 0 16 0 174 0 17 0 174 0 19 0 174 0 20 0 174 0 21 0 157 0 41 0 149 0 42]
+#[0 0 58 0 2 0 5 0 7 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 19 0 20 0 21 0 23 0 24]
+#[0 0 62 0 2 0 5 0 7 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 19 0 20 0 21 0 23 0 24]
+#[0 0 54 0 2 0 5 0 7 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 19 0 20 0 21 0 23 0 24]
+#[1 0 161 0 7 0 77 0 11 0 81 0 13 0 85 0 16 0 89 0 17 0 93 0 19 0 97 0 20 0 101 0 21 0 165 0 32]
+#[0 0 14 0 7 0 11 0 13 0 16 0 17 0 19 0 20 0 21]
+#[0 0 158 0 7 0 19]
+#[1 0 169 0 7 0 173 0 19]
+#[1 0 177 0 7 0 77 0 11 0 81 0 13 0 85 0 16 0 89 0 17 0 93 0 19 0 97 0 20 0 101 0 21 0 165 0 32]
+#[1 0 181 0 7 0 77 0 11 0 81 0 13 0 85 0 16 0 89 0 17 0 93 0 19 0 97 0 20 0 101 0 21 0 165 0 32]
+#[1 0 106 0 2 0 106 0 7 0 106 0 11 0 106 0 13 0 106 0 16 0 106 0 17 0 106 0 19 0 106 0 20 0 106 0 21 0 106 0 23 0 185 0 35 0 189 0 36 0 193 0 37]
+#[0 0 154 0 1 0 3 0 4 0 6 0 8 0 20 0 43]
+#[0 0 10 0 1 0 3 0 4 0 6 0 8 0 20 0 43]
+#[0 0 146 0 7 0 20]
+#[1 0 197 0 2 0 201 0 14]
+#[1 0 166 0 2 0 166 0 10 0 77 0 11 0 166 0 12 0 81 0 13 0 166 0 14 0 85 0 16 0 89 0 17 0 93 0 19 0 97 0 20 0 101 0 21 0 205 0 32]
+#[1 0 197 0 2 0 209 0 10]
+#[1 0 197 0 2 0 213 0 12]
+#[0 0 86 0 1 0 3 0 4 0 6 0 8 0 20 0 43]
+#[0 0 18 0 7 0 11 0 13 0 16 0 17 0 19 0 20 0 21]
+#[0 0 6 0 1 0 3 0 4 0 6 0 8 0 20 0 43]
+#[0 0 162 0 7 0 19]
+#[0 0 198 0 1 0 3 0 4 0 6 0 8 0 20 0 43]
+#[0 0 26 0 1 0 3 0 4 0 6 0 8 0 20 0 43]
+#[1 0 217 0 2 0 221 0 7]
+#[0 0 94 0 2 0 7]
+#[1 0 98 0 2 0 98 0 7 0 77 0 11 0 81 0 13 0 85 0 16 0 89 0 17 0 93 0 19 0 97 0 20 0 101 0 21 0 225 0 23 0 229 0 32]
+#[1 0 174 0 2 0 174 0 10 0 174 0 11 0 174 0 12 0 174 0 13 0 174 0 14 0 174 0 16 0 174 0 17 0 174 0 19 0 174 0 20 0 174 0 21 0 233 0 42]
+#[0 0 78 0 2 0 5 0 7 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 19 0 20 0 21 0 23 0 24]
+#[1 0 178 0 2 0 237 0 5 0 241 0 9 0 178 0 10 0 178 0 11 0 178 0 12 0 178 0 13 0 178 0 14 0 245 0 15 0 178 0 16 0 178 0 17 0 178 0 19 0 178 0 20 0 178 0 21]
+#[0 0 74 0 2 0 5 0 7 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 19 0 20 0 21 0 23 0 24]
+#[0 0 70 0 2 0 5 0 7 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 19 0 20 0 21 0 23 0 24]
+#[1 0 106 0 2 0 106 0 7 0 106 0 11 0 106 0 13 0 106 0 16 0 106 0 17 0 106 0 19 0 106 0 20 0 106 0 21 0 106 0 23 0 249 0 36 0 193 0 37]
+#[0 0 22 0 1 0 3 0 4 0 6 0 8 0 20 0 43]
+#[0 0 102 0 2 0 7]
+#[1 0 110 0 2 0 253 0 5 0 110 0 7 1 1 0 9 0 110 0 11 0 110 0 13 1 5 0 15 0 110 0 16 0 110 0 17 0 110 0 19 0 110 0 20 0 110 0 21 0 110 0 23 1 9 0 24]
+#[1 0 170 0 2 0 170 0 10 0 77 0 11 0 170 0 12 0 81 0 13 0 170 0 14 0 85 0 16 0 89 0 17 0 93 0 19 0 97 0 20 0 101 0 21 0 205 0 32]
+#[0 0 182 0 2 0 10 0 11 0 12 0 13 0 14 0 16 0 17 0 19 0 20 0 21]
+#[0 0 186 0 2 0 10 0 11 0 12 0 13 0 14 0 16 0 17 0 19 0 20 0 21]
+#[0 0 190 0 2 0 10 0 11 0 12 0 13 0 14 0 16 0 17 0 19 0 20 0 21]
+#[0 0 90 0 2 0 7]
+#[1 0 118 0 2 0 118 0 7 0 118 0 11 0 118 0 13 0 118 0 16 0 118 0 17 0 118 0 19 0 118 0 20 0 118 0 21 0 118 0 23 1 13 0 24]
+#[1 0 126 0 2 0 126 0 7 0 126 0 11 0 126 0 13 0 126 0 16 0 126 0 17 0 126 0 19 0 126 0 20 0 126 0 21 0 126 0 23 1 17 0 24]
+#[1 0 134 0 2 0 134 0 7 0 134 0 11 0 134 0 13 0 134 0 16 0 134 0 17 0 134 0 19 0 134 0 20 0 134 0 21 0 134 0 23 1 21 0 24]
+#[0 0 114 0 2 0 7 0 11 0 13 0 16 0 17 0 19 0 20 0 21 0 23]
+#[0 0 122 0 2 0 7 0 11 0 13 0 16 0 17 0 19 0 20 0 21 0 23]
+#[0 0 130 0 2 0 7 0 11 0 13 0 16 0 17 0 19 0 20 0 21 0 23]
+#[0 0 138 0 2 0 7 0 11 0 13 0 16 0 17 0 19 0 20 0 21 0 23]
 )
 ! !
 
@@ -471,4 +484,8 @@
 
 version
     ^ '$Header: /opt/data/cvs/stx/goodies/smaCC/SmaCC__SmaCCGrammarParser.st,v 1.1 2006-02-09 21:18:56 vranyj1 Exp $'
+!
+
+version_SVN
+    ^ '$Id$'
 ! !