Initial support for block and incremental highlighting... development
authorJan Vrany <jan.vrany@fit.cvut.cz>
Sun, 04 Aug 2013 01:46:45 +0100
branchdevelopment
changeset 2641 79395ea8b58f
parent 2640 6c1fe640b736
child 2642 fad6365a2e15
Initial support for block and incremental highlighting... ...although very naive now. Block and increments are highligter only on on lexical basis, i.e., no full parsing is done. Therefore method calls, fields and classes are not recognized...
tools/JavaDeclarationNode.st
tools/JavaDeclarationWithJavadodNode.st
tools/JavaMethodLikeDeclarationNode.st
tools/JavaParserI.st
tools/JavaParserIITests.st
tools/JavaScanner.st
tools/JavaSyntaxHighlighter.st
tools/JavaTypeDeclarationNode.st
tools/JavaVariableDeclarationNode.st
tools/Make.proto
tools/Make.spec
tools/Makefile.init
tools/abbrev.stc
tools/bc.mak
tools/libInit.cc
tools/stx_libjava_tools.st
tools/tools.rc
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tools/JavaDeclarationNode.st	Sun Aug 04 01:46:45 2013 +0100
@@ -0,0 +1,17 @@
+"{ Package: 'stx:libjava/tools' }"
+
+JavaParseNode subclass:#JavaDeclarationNode
+	instanceVariableNames:'javadoc annotations'
+	classVariableNames:''
+	poolDictionaries:''
+	category:'Languages-Java-Parser-AST'
+!
+
+
+!JavaDeclarationNode class methodsFor:'documentation'!
+
+version_HG
+
+    ^ '$Changeset: <not expanded> $'
+! !
+
--- a/tools/JavaDeclarationWithJavadodNode.st	Sat Jul 27 19:12:25 2013 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-"{ Package: 'stx:libjava/tools' }"
-
-JavaParseNode subclass:#JavaDeclarationWithJavadodNode
-	instanceVariableNames:'javadoc'
-	classVariableNames:''
-	poolDictionaries:''
-	category:'Languages-Java-Parser-AST'
-!
-
-
-!JavaDeclarationWithJavadodNode class methodsFor:'documentation'!
-
-version_HG
-
-    ^ '$Changeset: <not expanded> $'
-! !
-
--- a/tools/JavaMethodLikeDeclarationNode.st	Sat Jul 27 19:12:25 2013 +0100
+++ b/tools/JavaMethodLikeDeclarationNode.st	Sun Aug 04 01:46:45 2013 +0100
@@ -1,6 +1,6 @@
 "{ Package: 'stx:libjava/tools' }"
 
-JavaDeclarationWithJavadodNode subclass:#JavaMethodLikeDeclarationNode
+JavaDeclarationNode subclass:#JavaMethodLikeDeclarationNode
 	instanceVariableNames:''
 	classVariableNames:''
 	poolDictionaries:''
--- a/tools/JavaParserI.st	Sat Jul 27 19:12:25 2013 +0100
+++ b/tools/JavaParserI.st	Sun Aug 04 01:46:45 2013 +0100
@@ -806,7 +806,7 @@
 
 !JavaParserI::BlockParser methodsFor:'parsing'!
 
-parseOn: aStream
+old_parseOn: aStream
 
     | openCount peekC start stop |
 
@@ -872,7 +872,57 @@
 
     "
 
-    "Modified: / 12-04-2013 / 20:31:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Created: / 03-08-2013 / 19:37:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+parseOn: aStream
+
+    | start stop scanner stack t |
+
+
+    scanner := aStream. "/give it better name so the code is readable...
+    stack := Stack new:10.
+    t := scanner nextToken.
+    t ~~ ${ ifTrue:[
+        ^ PPFailure message: ('unexpected token (got ', (scanner tokenValue ? nil) printString , ' expecting { )') at: aStream position
+    ].
+    stack push: t.
+    [ t ~~ #EOF and:[ stack notEmpty ] ] whileTrue:[
+        "/Skip all non-paren like tokens...    
+        t := scanner nextToken.
+        [ ('{}[]()' includes: t) or: [ t == #EOF ] ] whileFalse:[
+            t := scanner nextToken.    
+        ].
+        ('{[(' includes: t) ifTrue:[
+            stack push: t.
+        ] ifFalse:[
+            | opening |
+
+            opening := '{[(' at: ('}])' indexOf: t).
+            stack top == opening ifTrue:[
+                stack pop
+            ] ifFalse:[
+                ^ PPFailure message: ('mispatched (got ''', t , ''' expecting ''', ('}])' at: ('{[(' indexOf: stack top)) , ''' )') at: aStream position
+            ]
+        ]
+    ].
+
+    stop := aStream position.
+    ^JavaScanner::Token new
+        type: #__Block__;
+        value: nil;
+        startPosition: start;
+        endPosition: stop;
+        yourself.
+
+
+
+    "
+        ( JavaBlockParser new trim , ';' asParser trim) parse: '{ } ;'
+
+    "
+
+    "Modified: / 04-08-2013 / 01:42:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !JavaParserI::TokenParser class methodsFor:'documentation'!
--- a/tools/JavaParserIITests.st	Sat Jul 27 19:12:25 2013 +0100
+++ b/tools/JavaParserIITests.st	Sun Aug 04 01:46:45 2013 +0100
@@ -594,6 +594,18 @@
     "Created: / 11-03-2012 / 13:15:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
+testClassBody7
+
+        self parse: '
+
+{  
+    public static int i;
+}'
+        rule: #classBody
+
+    "Created: / 03-08-2013 / 20:13:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 testClassDeclaration1
 
         self parse: '
--- a/tools/JavaScanner.st	Sat Jul 27 19:12:25 2013 +0100
+++ b/tools/JavaScanner.st	Sun Aug 04 01:46:45 2013 +0100
@@ -238,11 +238,12 @@
     ^Token new
         type: tokenType;
         value: tokenValue;
-        startPosition: tokenStartPosition;
-        endPosition: tokenEndPosition;
+        startPosition: tokenStartPosition + 1;
+        endPosition: tokenEndPosition + 1;
         yourself
 
     "Created: / 17-03-2012 / 13:32:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 03-08-2013 / 20:23:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !JavaScanner methodsFor:'converting'!
@@ -856,50 +857,50 @@
     inString := true.
 
     [inString] whileTrue:[
-	nextChar isNil ifTrue:[
-	    self syntaxError:'unexpected end-of-input in String'
-		    position:pos to:(source position - 1).
-	    tokenValue := nil.
-	    tokenType := #EOF.
-	    ^ tokenType
-	].
-	nextChar == $\ ifTrue:[
-	    nextChar := source next.
-	    nextChar := self characterEscape:nextChar.
-	] ifFalse:[
-	    (nextChar == Character cr) ifTrue:[
-		lineNr := lineNr + 1
-	    ] ifFalse:[
-		(nextChar == delimiter) ifTrue:[
-		    (source peekOrNil == delimiter) ifTrue:[
-			source next
-		    ] ifFalse:[
-			inString := false
-		    ]
-		].
-	    ].
-	].
-	inString ifTrue:[
-	    s nextPut:nextChar.
-	    nextChar := source next
-	]
+        nextChar isNil ifTrue:[
+            self syntaxError:'unexpected end-of-input in String'
+                    position:pos + 1 to:(source position).
+            tokenValue := nil.
+            tokenType := #EOF.
+            ^ tokenType
+        ].
+        nextChar == $\ ifTrue:[
+            nextChar := source next.
+            nextChar := self characterEscape:nextChar.
+        ] ifFalse:[
+            (nextChar == Character cr) ifTrue:[
+                lineNr := lineNr + 1
+            ] ifFalse:[
+                (nextChar == delimiter) ifTrue:[
+                    (source peekOrNil == delimiter) ifTrue:[
+                        source next
+                    ] ifFalse:[
+                        inString := false
+                    ]
+                ].
+            ].
+        ].
+        inString ifTrue:[
+            s nextPut:nextChar.
+            nextChar := source next
+        ]
     ].
 
     tokenValue := s contents.
     isCharacter ifTrue:[
-	tokenValue size ~~ 1 ifTrue:[
-	    self syntaxError:'bad (multi-)character constant'
-		    position:pos to:(source position - 1).
-	].
-	tokenValue := tokenValue at:1.
-	tokenType := #Character.
+        tokenValue size ~~ 1 ifTrue:[
+            self syntaxError:'bad (multi-)character constant'
+                    position:pos to:(source position - 1).
+        ].
+        tokenValue := tokenValue at:1.
+        tokenType := #Character.
     ] ifFalse:[
-	tokenType := #String.
+        tokenType := #String.
     ].
     ^ tokenType
 
-    "Created: / 16.5.1998 / 19:53:05 / cg"
-    "Modified: / 16.5.1998 / 19:57:16 / cg"
+    "Created: / 16-05-1998 / 19:53:05 / cg"
+    "Modified: / 04-08-2013 / 00:57:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 nextToken
--- a/tools/JavaSyntaxHighlighter.st	Sat Jul 27 19:12:25 2013 +0100
+++ b/tools/JavaSyntaxHighlighter.st	Sun Aug 04 01:46:45 2013 +0100
@@ -98,6 +98,12 @@
     "Created: / 04-08-2011 / 23:44:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
+formatClassDefinition:newCode line: ln number: lnr in:cls
+    ^self new formatClassDefinition:newCode line: ln number: lnr in:cls.
+
+    "Created: / 04-08-2013 / 00:25:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 formatExpression:source in:class
 
     ^self new formatExpression:source in:class
@@ -131,6 +137,12 @@
     ^self new formatMethod:mth source:source in:class using: preferences elementsInto: elements
 
     "Created: / 04-08-2011 / 23:42:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+formatMethod:mthd source:newCode line: ln number: lnr in:cls using:syntaxPreferences
+    ^ self new formatMethod:mthd source:newCode line: ln number: lnr in:cls using:syntaxPreferences
+
+    "Created: / 04-08-2013 / 00:26:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !JavaSyntaxHighlighter methodsFor:'formatting'!
@@ -150,6 +162,27 @@
     "Created: / 04-08-2011 / 23:44:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
+formatClassDefinition:newCode line: line number: lnr in:cls
+    | scanner |
+
+    line isEmptyOrNil ifTrue:[ ^  nil ].
+
+    sourceText := line asText.
+    preferences isNil ifTrue:[
+        preferences := UserPreferences current.
+    ]. 
+    scanner := Scanner for: line asString.
+    scanner highlighter: self.
+    [
+        [ scanner nextToken ~~ #EOF ] whileTrue.
+    ] on: Error do:[
+
+    ].
+        ^ sourceText
+
+    "Created: / 04-08-2013 / 00:25:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 formatExpression:source in:class
 
 "/    self breakPoint:#jv.
@@ -182,6 +215,28 @@
     ^self formatMethod:mth source:source in:class using: prefs
 
     "Created: / 04-08-2011 / 23:42:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+formatMethod:mthd source:newCode line: line number: lnr in:cls using:syntaxPreferences
+    | scanner |
+
+    line isEmptyOrNil ifTrue:[ ^  nil ].
+
+    sourceText := line asText.
+    preferences := syntaxPreferences.
+    preferences isNil ifTrue:[
+        preferences := UserPreferences current.
+    ]. 
+    scanner := Scanner for: line asString.
+    scanner highlighter: self.
+    [
+        [ scanner nextToken ~~ #EOF ] whileTrue.
+    ] on: Error do:[
+
+    ].
+    ^ sourceText
+
+    "Created: / 04-08-2013 / 00:26:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !JavaSyntaxHighlighter methodsFor:'formatting - private'!
@@ -708,26 +763,21 @@
 !JavaSyntaxHighlighter::Scanner methodsFor:'reading next token'!
 
 nextToken
-    |t|
+    | t |
 
-    [
-        t := super nextToken.
-        tokenEndPosition := source position.
-        t isNil
-    ] whileTrue.
-    Verbose == true ifTrue:[
-        Transcript 
-            show:'JavaScanner nextToken => ';
-            show: t storeString;
-            show: ' | ';
-            showCR: tokenValue.
-    ].
+    t := super nextToken.
+    t == #String ifTrue:[
+        highlighter markStringFrom:tokenStartPosition + 1 to: tokenEndPosition + 1.  
+    ] ifFalse:[
+    t == #Integer ifTrue:[
+        highlighter markConstantFrom:tokenStartPosition + 1 to: tokenEndPosition + 1.
+    ]].
     ^ t
 
     "Created: / 14-05-1998 / 15:48:04 / cg"
     "Modified: / 16-05-1998 / 19:12:29 / cg"
-    "Modified: / 17-03-2012 / 17:35:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Created: / 17-03-2012 / 19:15:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 03-08-2013 / 20:12:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 skipComment
--- a/tools/JavaTypeDeclarationNode.st	Sat Jul 27 19:12:25 2013 +0100
+++ b/tools/JavaTypeDeclarationNode.st	Sun Aug 04 01:46:45 2013 +0100
@@ -1,6 +1,6 @@
 "{ Package: 'stx:libjava/tools' }"
 
-JavaDeclarationWithJavadodNode subclass:#JavaTypeDeclarationNode
+JavaDeclarationNode subclass:#JavaTypeDeclarationNode
 	instanceVariableNames:'modifiers name superclass interfaces members'
 	classVariableNames:''
 	poolDictionaries:''
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tools/JavaVariableDeclarationNode.st	Sun Aug 04 01:46:45 2013 +0100
@@ -0,0 +1,23 @@
+"{ Package: 'stx:libjava/tools' }"
+
+JavaDeclarationNode subclass:#JavaVariableDeclarationNode
+	instanceVariableNames:'typej name'
+	classVariableNames:''
+	poolDictionaries:''
+	category:'Languages-Java-Parser-AST'
+!
+
+!JavaVariableDeclarationNode methodsFor:'accessing'!
+
+type
+    ^ typej
+
+    "Created: / 03-08-2013 / 19:27:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+type:something
+    typej := something.
+
+    "Created: / 03-08-2013 / 19:27:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
--- a/tools/Make.proto	Sat Jul 27 19:12:25 2013 +0100
+++ b/tools/Make.proto	Sun Aug 04 01:46:45 2013 +0100
@@ -34,7 +34,7 @@
 # add the path(es) here:,
 # ********** OPTIONAL: MODIFY the next lines ***
 # LOCALINCLUDES=-Ifoo -Ibar
-LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/libbasic -I$(INCLUDE_TOP)/stx/libview2 -I$(INCLUDE_TOP)/stx/goodies/petitparser -I$(INCLUDE_TOP)/stx/libtool -I$(INCLUDE_TOP)/stx/libjava -I$(INCLUDE_TOP)/stx/libcomp -I$(INCLUDE_TOP)/stx/libview -I$(INCLUDE_TOP)/stx/libwidg2
+LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/libbasic -I$(INCLUDE_TOP)/stx/libview2 -I$(INCLUDE_TOP)/stx/goodies/petitparser -I$(INCLUDE_TOP)/stx/libtool -I$(INCLUDE_TOP)/stx/libjava -I$(INCLUDE_TOP)/stx/goodies/sunit -I$(INCLUDE_TOP)/stx/libcomp -I$(INCLUDE_TOP)/stx/libview -I$(INCLUDE_TOP)/stx/libwidg2
 
 
 # if you need any additional defines for embedded C code,
@@ -141,9 +141,10 @@
 	cd ../../libui && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../libview && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../goodies/petitparser && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../libview2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../goodies/sunit && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../libwidg && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../ && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
-	cd ../../libview2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
-	cd ../../libwidg && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../libwidg2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../libtool && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 
@@ -181,22 +182,23 @@
 $(OUTDIR)JavaSourcePartition.$(O) JavaSourcePartition.$(H): JavaSourcePartition.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaSourceReference.$(O) JavaSourceReference.$(H): JavaSourceReference.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)stx_libjava_tools.$(O) stx_libjava_tools.$(H): stx_libjava_tools.st $(INCLUDE_TOP)/stx/libbasic/LibraryDefinition.$(H) $(INCLUDE_TOP)/stx/libbasic/ProjectDefinition.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)JavaDeclarationWithJavadodNode.$(O) JavaDeclarationWithJavadodNode.$(H): JavaDeclarationWithJavadodNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)JavaDeclarationNode.$(O) JavaDeclarationNode.$(H): JavaDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaImportDeclarationNode.$(O) JavaImportDeclarationNode.$(H): JavaImportDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaLiteralNode.$(O) JavaLiteralNode.$(H): JavaLiteralNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaPackageDeclarationNode.$(O) JavaPackageDeclarationNode.$(H): JavaPackageDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaParserII.$(O) JavaParserII.$(H): JavaParserII.st $(INCLUDE_TOP)/stx/libjava/tools/JavaParserI.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/PPCompositeParser.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/PPDelegateParser.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/PPParser.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaScanner.$(O) JavaScanner.$(H): JavaScanner.st $(INCLUDE_TOP)/stx/libjava/tools/JavaScannerBase.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaSourceFile.$(O) JavaSourceFile.$(H): JavaSourceFile.st $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)JavaMethodLikeDeclarationNode.$(O) JavaMethodLikeDeclarationNode.$(H): JavaMethodLikeDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationWithJavadodNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)JavaMethodLikeDeclarationNode.$(O) JavaMethodLikeDeclarationNode.$(H): JavaMethodLikeDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaParser.$(O) JavaParser.$(H): JavaParser.st $(INCLUDE_TOP)/stx/libjava/tools/JavaParserII.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParserI.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/PPCompositeParser.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/PPDelegateParser.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/PPParser.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)JavaTypeDeclarationNode.$(O) JavaTypeDeclarationNode.$(H): JavaTypeDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationWithJavadodNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)JavaAnnotationDeclarationNode.$(O) JavaAnnotationDeclarationNode.$(H): JavaAnnotationDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationWithJavadodNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)JavaClassDeclarationNode.$(O) JavaClassDeclarationNode.$(H): JavaClassDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationWithJavadodNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)JavaConstructorDeclarationNode.$(O) JavaConstructorDeclarationNode.$(H): JavaConstructorDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaMethodLikeDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationWithJavadodNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)JavaEnumDeclarationNode.$(O) JavaEnumDeclarationNode.$(H): JavaEnumDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationWithJavadodNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)JavaInterfaceDeclarationNode.$(O) JavaInterfaceDeclarationNode.$(H): JavaInterfaceDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationWithJavadodNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)JavaSyntaxHighlighter.$(O) JavaSyntaxHighlighter.$(H): JavaSyntaxHighlighter.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNodeBuilder.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaScanner.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaScannerBase.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParser.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParserII.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParserI.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/PPCompositeParser.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/PPDelegateParser.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/PPParser.$(H) $(STCHDR)
+$(OUTDIR)JavaTypeDeclarationNode.$(O) JavaTypeDeclarationNode.$(H): JavaTypeDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)JavaVariableDeclarationNode.$(O) JavaVariableDeclarationNode.$(H): JavaVariableDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)JavaAnnotationDeclarationNode.$(O) JavaAnnotationDeclarationNode.$(H): JavaAnnotationDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)JavaClassDeclarationNode.$(O) JavaClassDeclarationNode.$(H): JavaClassDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)JavaConstructorDeclarationNode.$(O) JavaConstructorDeclarationNode.$(H): JavaConstructorDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaMethodLikeDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)JavaEnumDeclarationNode.$(O) JavaEnumDeclarationNode.$(H): JavaEnumDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)JavaInterfaceDeclarationNode.$(O) JavaInterfaceDeclarationNode.$(H): JavaInterfaceDeclarationNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaDeclarationNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)JavaSyntaxHighlighter.$(O) JavaSyntaxHighlighter.$(H): JavaSyntaxHighlighter.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaScanner.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaScannerBase.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParser.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParserII.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParserI.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/PPCompositeParser.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/PPDelegateParser.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/PPParser.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNodeBuilder.$(H) $(STCHDR)
 $(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)/stx/libjava/JavaObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__NewSystemBrowser.$(H) $(INCLUDE_TOP)/stx/libtool/SystemBrowser.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libbasic/ConfigurableFeatures.$(H) $(STCHDR)
 
 # ENDMAKEDEPEND --- do not remove this line
--- a/tools/Make.spec	Sat Jul 27 19:12:25 2013 +0100
+++ b/tools/Make.spec	Sun Aug 04 01:46:45 2013 +0100
@@ -66,7 +66,7 @@
 	JavaSourcePartition \
 	JavaSourceReference \
 	stx_libjava_tools \
-	JavaDeclarationWithJavadodNode \
+	JavaDeclarationNode \
 	JavaImportDeclarationNode \
 	JavaLiteralNode \
 	JavaPackageDeclarationNode \
@@ -76,6 +76,7 @@
 	JavaMethodLikeDeclarationNode \
 	JavaParser \
 	JavaTypeDeclarationNode \
+	JavaVariableDeclarationNode \
 	JavaAnnotationDeclarationNode \
 	JavaClassDeclarationNode \
 	JavaConstructorDeclarationNode \
@@ -103,7 +104,7 @@
     $(OUTDIR_SLASH)JavaSourcePartition.$(O) \
     $(OUTDIR_SLASH)JavaSourceReference.$(O) \
     $(OUTDIR_SLASH)stx_libjava_tools.$(O) \
-    $(OUTDIR_SLASH)JavaDeclarationWithJavadodNode.$(O) \
+    $(OUTDIR_SLASH)JavaDeclarationNode.$(O) \
     $(OUTDIR_SLASH)JavaImportDeclarationNode.$(O) \
     $(OUTDIR_SLASH)JavaLiteralNode.$(O) \
     $(OUTDIR_SLASH)JavaPackageDeclarationNode.$(O) \
@@ -113,6 +114,7 @@
     $(OUTDIR_SLASH)JavaMethodLikeDeclarationNode.$(O) \
     $(OUTDIR_SLASH)JavaParser.$(O) \
     $(OUTDIR_SLASH)JavaTypeDeclarationNode.$(O) \
+    $(OUTDIR_SLASH)JavaVariableDeclarationNode.$(O) \
     $(OUTDIR_SLASH)JavaAnnotationDeclarationNode.$(O) \
     $(OUTDIR_SLASH)JavaClassDeclarationNode.$(O) \
     $(OUTDIR_SLASH)JavaConstructorDeclarationNode.$(O) \
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tools/Makefile.init	Sun Aug 04 01:46:45 2013 +0100
@@ -0,0 +1,27 @@
+#
+# DO NOT EDIT
+#
+# make uses this file (Makefile) only, if there is no
+# file named "makefile" (lower-case m) in the same directory.
+# My only task is to generate the real makefile and call make again.
+# Thereafter, I am no longer used and needed.
+#
+# MACOSX caveat:
+#   as filenames are not case sensitive (in a default setup),
+#   we cannot use the above trick. Therefore, this file is now named
+#   "Makefile.init", and you have to execute "make -f Makefile.init" to
+#   get the initial makefile.  This is now also done by the toplevel CONFIG
+#   script.
+
+.PHONY: run
+
+run: makefile
+	$(MAKE) -f makefile
+
+#only needed for the definition of $(TOP)
+include Make.proto
+
+makefile: mf
+
+mf:
+	$(TOP)/rules/stmkmf
--- a/tools/abbrev.stc	Sat Jul 27 19:12:25 2013 +0100
+++ b/tools/abbrev.stc	Sun Aug 04 01:46:45 2013 +0100
@@ -17,13 +17,12 @@
 JavaSetInspectorView JavaSetInspectorView stx:libjava/tools 'Languages-Java-Tools-Inspectors' 2
 JavaSettingsApplication JavaSettingsApplication stx:libjava/tools 'Languages-Java-Tools' 1
 JavaSourcePartition JavaSourcePartition stx:libjava/tools 'Languages-Java-Parser-Utils' 0
-JavaSourcePartitioner JavaSourcePartitioner stx:libjava/tools 'Languages-Java-Parser-Utils' 0
 JavaSourcePartitionerTests JavaSourcePartitionerTests stx:libjava/tools 'Languages-Java-Tests-Parser' 1
 JavaSourceReference JavaSourceReference stx:libjava/tools 'Languages-Java-Parser-Utils' 0
 JavaSyntaxHighlighter_Eclipse JavaSyntaxHighlighter_Eclipse stx:libjava/tools 'Languages-Java-Tools-Eclipse' 0
 JavaSyntaxHighlighter_Old JavaSyntaxHighlighter_Old stx:libjava/tools 'Languages-Java-Tools' 0
 stx_libjava_tools stx_libjava_tools stx:libjava/tools '* Projects & Packages *' 3
-JavaDeclarationWithJavadodNode JavaDeclarationWithJavadodNode stx:libjava/tools 'Languages-Java-Parser-AST' 0
+JavaDeclarationNode JavaDeclarationNode stx:libjava/tools 'Languages-Java-Parser-AST' 0
 JavaImportDeclarationNode JavaImportDeclarationNode stx:libjava/tools 'Languages-Java-Parser-AST' 0
 JavaLiteralNode JavaLiteralNode stx:libjava/tools 'Languages-Java-Parser-AST' 0
 JavaPackageDeclarationNode JavaPackageDeclarationNode stx:libjava/tools 'Languages-Java-Parser-AST' 0
@@ -32,7 +31,9 @@
 JavaSourceFile JavaSourceFile stx:libjava/tools 'Languages-Java-Parser-AST' 0
 JavaMethodLikeDeclarationNode JavaMethodLikeDeclarationNode stx:libjava/tools 'Languages-Java-Parser-AST' 0
 JavaParser JavaParser stx:libjava/tools 'Languages-Java-Parser' 0
+JavaSourcePartitioner JavaSourcePartitioner stx:libjava/tools 'Languages-Java-Parser-Utils' 0
 JavaTypeDeclarationNode JavaTypeDeclarationNode stx:libjava/tools 'Languages-Java-Parser-AST' 0
+JavaVariableDeclarationNode JavaVariableDeclarationNode stx:libjava/tools 'Languages-Java-Parser-AST' 0
 JavaAnnotationDeclarationNode JavaAnnotationDeclarationNode stx:libjava/tools 'Languages-Java-Parser-AST' 0
 JavaClassDeclarationNode JavaClassDeclarationNode stx:libjava/tools 'Languages-Java-Parser-AST' 0
 JavaConstructorDeclarationNode JavaConstructorDeclarationNode stx:libjava/tools 'Languages-Java-Parser-AST' 0
--- a/tools/bc.mak	Sat Jul 27 19:12:25 2013 +0100
+++ b/tools/bc.mak	Sun Aug 04 01:46:45 2013 +0100
@@ -34,7 +34,7 @@
 
 
 
-LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libview2 -I$(INCLUDE_TOP)\stx\goodies\petitparser -I$(INCLUDE_TOP)\stx\libtool -I$(INCLUDE_TOP)\stx\libjava -I$(INCLUDE_TOP)\stx\libcomp -I$(INCLUDE_TOP)\stx\libview -I$(INCLUDE_TOP)\stx\libwidg2
+LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libview2 -I$(INCLUDE_TOP)\stx\goodies\petitparser -I$(INCLUDE_TOP)\stx\libtool -I$(INCLUDE_TOP)\stx\libjava -I$(INCLUDE_TOP)\stx\goodies\sunit -I$(INCLUDE_TOP)\stx\libcomp -I$(INCLUDE_TOP)\stx\libview -I$(INCLUDE_TOP)\stx\libwidg2
 LOCALDEFINES=
 
 STCLOCALOPT=-package=$(PACKAGE) -I. $(LOCALINCLUDES) -headerDir=. $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES)  -varPrefix=$(LIBNAME)
@@ -58,9 +58,10 @@
 	pushd ..\..\libui & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\..\libview & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\..\goodies\petitparser & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\libview2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\goodies\sunit & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\libwidg & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd .. & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
-	pushd ..\..\libview2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
-	pushd ..\..\libwidg & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\..\libwidg2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\..\libtool & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 
@@ -105,22 +106,23 @@
 $(OUTDIR)JavaSourcePartition.$(O) JavaSourcePartition.$(H): JavaSourcePartition.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaSourceReference.$(O) JavaSourceReference.$(H): JavaSourceReference.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)stx_libjava_tools.$(O) stx_libjava_tools.$(H): stx_libjava_tools.st $(INCLUDE_TOP)\stx\libbasic\LibraryDefinition.$(H) $(INCLUDE_TOP)\stx\libbasic\ProjectDefinition.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)JavaDeclarationWithJavadodNode.$(O) JavaDeclarationWithJavadodNode.$(H): JavaDeclarationWithJavadodNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)JavaDeclarationNode.$(O) JavaDeclarationNode.$(H): JavaDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaImportDeclarationNode.$(O) JavaImportDeclarationNode.$(H): JavaImportDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaLiteralNode.$(O) JavaLiteralNode.$(H): JavaLiteralNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaPackageDeclarationNode.$(O) JavaPackageDeclarationNode.$(H): JavaPackageDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaParserII.$(O) JavaParserII.$(H): JavaParserII.st $(INCLUDE_TOP)\stx\libjava\tools\JavaParserI.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\PPCompositeParser.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\PPDelegateParser.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\PPParser.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaScanner.$(O) JavaScanner.$(H): JavaScanner.st $(INCLUDE_TOP)\stx\libjava\tools\JavaScannerBase.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaSourceFile.$(O) JavaSourceFile.$(H): JavaSourceFile.st $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)JavaMethodLikeDeclarationNode.$(O) JavaMethodLikeDeclarationNode.$(H): JavaMethodLikeDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationWithJavadodNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)JavaMethodLikeDeclarationNode.$(O) JavaMethodLikeDeclarationNode.$(H): JavaMethodLikeDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaParser.$(O) JavaParser.$(H): JavaParser.st $(INCLUDE_TOP)\stx\libjava\tools\JavaParserII.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParserI.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\PPCompositeParser.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\PPDelegateParser.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\PPParser.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)JavaTypeDeclarationNode.$(O) JavaTypeDeclarationNode.$(H): JavaTypeDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationWithJavadodNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)JavaAnnotationDeclarationNode.$(O) JavaAnnotationDeclarationNode.$(H): JavaAnnotationDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationWithJavadodNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)JavaClassDeclarationNode.$(O) JavaClassDeclarationNode.$(H): JavaClassDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationWithJavadodNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)JavaConstructorDeclarationNode.$(O) JavaConstructorDeclarationNode.$(H): JavaConstructorDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaMethodLikeDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationWithJavadodNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)JavaEnumDeclarationNode.$(O) JavaEnumDeclarationNode.$(H): JavaEnumDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationWithJavadodNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)JavaInterfaceDeclarationNode.$(O) JavaInterfaceDeclarationNode.$(H): JavaInterfaceDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationWithJavadodNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)JavaSyntaxHighlighter.$(O) JavaSyntaxHighlighter.$(H): JavaSyntaxHighlighter.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNodeBuilder.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaScanner.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaScannerBase.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParser.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParserII.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParserI.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\PPCompositeParser.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\PPDelegateParser.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\PPParser.$(H) $(STCHDR)
+$(OUTDIR)JavaTypeDeclarationNode.$(O) JavaTypeDeclarationNode.$(H): JavaTypeDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)JavaVariableDeclarationNode.$(O) JavaVariableDeclarationNode.$(H): JavaVariableDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)JavaAnnotationDeclarationNode.$(O) JavaAnnotationDeclarationNode.$(H): JavaAnnotationDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)JavaClassDeclarationNode.$(O) JavaClassDeclarationNode.$(H): JavaClassDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)JavaConstructorDeclarationNode.$(O) JavaConstructorDeclarationNode.$(H): JavaConstructorDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaMethodLikeDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)JavaEnumDeclarationNode.$(O) JavaEnumDeclarationNode.$(H): JavaEnumDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)JavaInterfaceDeclarationNode.$(O) JavaInterfaceDeclarationNode.$(H): JavaInterfaceDeclarationNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaTypeDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaDeclarationNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)JavaSyntaxHighlighter.$(O) JavaSyntaxHighlighter.$(H): JavaSyntaxHighlighter.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaScanner.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaScannerBase.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParser.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParserII.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParserI.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\PPCompositeParser.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\PPDelegateParser.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\PPParser.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNodeBuilder.$(H) $(STCHDR)
 $(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)\stx\libjava\JavaObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NewSystemBrowser.$(H) $(INCLUDE_TOP)\stx\libtool\SystemBrowser.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libbasic\ConfigurableFeatures.$(H) $(STCHDR)
 
 # ENDMAKEDEPEND --- do not remove this line
--- a/tools/libInit.cc	Sat Jul 27 19:12:25 2013 +0100
+++ b/tools/libInit.cc	Sun Aug 04 01:46:45 2013 +0100
@@ -43,7 +43,7 @@
 _JavaSourcePartition_Init(pass,__pRT__,snd);
 _JavaSourceReference_Init(pass,__pRT__,snd);
 _stx_137libjava_137tools_Init(pass,__pRT__,snd);
-_JavaDeclarationWithJavadodNode_Init(pass,__pRT__,snd);
+_JavaDeclarationNode_Init(pass,__pRT__,snd);
 _JavaImportDeclarationNode_Init(pass,__pRT__,snd);
 _JavaLiteralNode_Init(pass,__pRT__,snd);
 _JavaPackageDeclarationNode_Init(pass,__pRT__,snd);
@@ -53,6 +53,7 @@
 _JavaMethodLikeDeclarationNode_Init(pass,__pRT__,snd);
 _JavaParser_Init(pass,__pRT__,snd);
 _JavaTypeDeclarationNode_Init(pass,__pRT__,snd);
+_JavaVariableDeclarationNode_Init(pass,__pRT__,snd);
 _JavaAnnotationDeclarationNode_Init(pass,__pRT__,snd);
 _JavaClassDeclarationNode_Init(pass,__pRT__,snd);
 _JavaConstructorDeclarationNode_Init(pass,__pRT__,snd);
--- a/tools/stx_libjava_tools.st	Sat Jul 27 19:12:25 2013 +0100
+++ b/tools/stx_libjava_tools.st	Sun Aug 04 01:46:45 2013 +0100
@@ -7,11 +7,6 @@
 	category:'* Projects & Packages *'
 !
 
-!stx_libjava_tools class methodsFor:'documentation'!
-
-extensionsVersion_SVN
-    ^ '$Id: stx_libjava_tools.st,v 1.2 2013-02-25 11:15:35 vrany Exp $'
-! !
 
 !stx_libjava_tools class methodsFor:'description'!
 
@@ -29,18 +24,17 @@
      or classes which are extended by this package.
      This list can be maintained manually or (better) generated and
      updated by scanning the superclass hierarchies
-     (the browser has a menu function for that)
-     However, often too much is found, and you may want to explicitely
-     exclude individual packages in the #excludedFromPreRequisites method."
+     (the browser has a menu function for that)"
 
     ^ #(
-        #'stx:goodies/petitparser'    "PPCompositeParser - superclass of JavaParserII "
-        #'stx:libbasic'    "Autoload - superclass of JavaParserITests "
-        #'stx:libcomp'    "ParseNode - superclass of JavaConstructorDeclarationNode "
+        #'stx:goodies/petitparser'    "PPAbstractParseTest - superclass of JavaParserIITests "
+        #'stx:goodies/sunit'    "TestAsserter - superclass of JavaParserIITests "
+        #'stx:libbasic'    "Autoload - superclass of JavaSyntaxHighlighter_Eclipse "
+        #'stx:libcomp'    "ParseNode - superclass of JavaAnnotationDeclarationNode "
         #'stx:libjava'    "JavaObject - extended "
-        #'stx:libtool'    "InspectorView - superclass of JavaListInspectorView "
-        #'stx:libview'    "SimpleView - superclass of JavaListInspectorView "
-        #'stx:libview2'    "SimpleDialog - superclass of JavaCodeLibraryEditor "
+        #'stx:libtool'    "AbstractSettingsApplication - superclass of JavaSettingsApplication "
+        #'stx:libview'    "DeviceGraphicsContext - superclass of JavaListInspectorView "
+        #'stx:libview2'    "ApplicationModel - extended "
         #'stx:libwidg2'    "HierarchicalItem - superclass of JavaCodeBundleEditor::Item "
     )
 !
@@ -77,7 +71,7 @@
      exclude individual packages in the #excludedFromPreRequisites method."
 
     ^ #(
-        #'stx:libbasic2'    "OrderedDictionary - referenced by JavaSyntaxHighlighter>>format:kind:in: "
+        #'stx:libbasic2'    "CacheDictionary - referenced by JavaParser_Eclipse class>>initialize "
         #'stx:libjava/experiments'    "JavaCompiler - referenced by JavaCompilerProblemHighlighter>>format: "
     )
 !
@@ -167,13 +161,12 @@
         JavaSetInspectorView
         JavaSettingsApplication
         JavaSourcePartition
-        (JavaSourcePartitioner autoload)
         (JavaSourcePartitionerTests autoload)
         JavaSourceReference
         (#'JavaSyntaxHighlighter_Eclipse' autoload)
         (#'JavaSyntaxHighlighter_Old' autoload)
         #'stx_libjava_tools'
-        JavaDeclarationWithJavadodNode
+        JavaDeclarationNode
         JavaImportDeclarationNode
         JavaLiteralNode
         JavaPackageDeclarationNode
@@ -182,7 +175,9 @@
         JavaSourceFile
         JavaMethodLikeDeclarationNode
         JavaParser
+        (JavaSourcePartitioner autoload)
         JavaTypeDeclarationNode
+        JavaVariableDeclarationNode
         JavaAnnotationDeclarationNode
         JavaClassDeclarationNode
         JavaConstructorDeclarationNode
--- a/tools/tools.rc	Sat Jul 27 19:12:25 2013 +0100
+++ b/tools/tools.rc	Sun Aug 04 01:46:45 2013 +0100
@@ -25,7 +25,7 @@
       VALUE "LegalCopyright", "Copyright Claus Gittinger 1988-2011\nCopyright eXept Software AG 1998-2011\0"
       VALUE "ProductName", "Smalltalk/X\0"
       VALUE "ProductVersion", "6.2.3.0\0"
-      VALUE "ProductDate", "Mon, 22 Apr 2013 23:44:29 GMT\0"
+      VALUE "ProductDate", "Sun, 04 Aug 2013 00:44:15 GMT\0"
     END
 
   END