--- a/loadClasses Fri Oct 29 14:48:43 1999 +0000
+++ b/loadClasses Tue Nov 09 09:25:25 1999 +0000
@@ -1,10 +1,16 @@
+"{ package:'detemobil:ftam' }"
+
+|files|
+
+'loading package stx:libjava ...' printCR.
+
Scanner allowDollarInIdentifier:true.
"/
"/ base system
"/
-#(
+files := #(
'Java'
'JavaVM'
@@ -17,7 +23,6 @@
'JavaMethodWithException'
'JavaMethodWithHandler'
'JavaNativeMethod'
-"/ 'JavaMethodWithBreakpoint'
'JavaContext'
'JavaProcess'
@@ -53,72 +58,33 @@
'JavaEmbeddedFrameView'
'JavaDeparser'
-) do:[:fBase | |f|
- f := fBase , '.cls'.
- (Smalltalk fileIn:f) ifTrue:[
- Transcript showCR:('loaded ' , f).
- ] ifFalse:[
- f := fBase , '.st'.
- Smalltalk fileIn:f
- ]
-]
-!
+).
-"/
-"/ autoloaded add-ons
-"/
-#(
- "/
- "/ decompiler
- "/
-"/ 'JavaDeparser' 'JavaDeparser.st'
- 'JavaScanner' 'JavaScanner.st'
- 'JavaParser' 'JavaParser.st'
- 'JavaCompiler' 'JavaCompiler.st'
+(Smalltalk loadClassLibraryIfAbsent:'libjava') ifTrue:[
+ |handle loaded|
- 'JavaParseNode' 'JavaParseNode.st'
- 'JavaAssignmentNode' 'JavaAssignmentNode.st'
- 'JavaPrimaryNode' 'JavaPrimaryNode.st'
- 'JavaConstantNode' 'JavaConstantNode.st'
- 'JavaVariableNode' 'JavaVariableNode.st'
- 'JavaMessageNode' 'JavaMessageNode.st'
- 'JavaNewNode' 'JavaNewNode.st'
- 'JavaStatementNode' 'JavaStatementNode.st'
- 'JavaExpressionNode' 'JavaExpressionNode.st'
- 'JavaReturnNode' 'JavaReturnNode.st'
- 'JavaIfNode' 'JavaIfNode.st'
- 'JavaForNode' 'JavaForNode.st'
- 'JavaGotoNode' 'JavaGotoNode.st'
- 'JavaWhileNode' 'JavaWhileNode.st'
- 'JavaDoWhileNode' 'JavaDoWhileNode.st'
- 'JavaTryCatchNode' 'JavaTryCatchNode.st'
- 'JavaThrowNode' 'JavaThrowNode.st'
- 'JavaConditionalExpressionNode' 'JavaConditionalExpressionNode.st'
- 'JavaMonitorNode' 'JavaMonitorNode.st'
- 'JavaSwitchNode' 'JavaSwitchNode.st'
- 'JavaStatementList' 'JavaStatementList.st'
+ loaded := OrderedCollection new.
+ handle := ObjectFileLoader loadedObjectHandles
+ detect:[:h | |cls|
+ cls := h classes firstIfEmpty:nil.
+ cls notNil and:[cls package = 'stx:libjava']
+ ]
+ ifNone:nil.
+ handle notNil ifTrue:[
+ handle classes do:[:c| c isMeta ifFalse:[loaded add:c classFilename]].
+ ].
+ files := files asOrderedCollection.
+ loaded do:[:f| files remove:f ifAbsent:[]].
+].
- "/
- "/ applet/GUI support
- "/
- 'SmalltalkAppletContext' 'SmalltalkAppletContext.st'
- 'SmalltalkAppletStub' 'SmalltalkAppletStub.st'
-"/ 'JavaView' 'JavaView.st'
-"/ 'JavaEmbeddedFrameView' 'JavaEmbeddedFrameView.st'
-
- 'UIGalleryJavaEntry' 'UIGalleryJavaEntry.st'
- 'JavaAppletComponentSpec' 'JavaAppletComponentSpec.st'
- 'JavaAppletDemo1' 'JavaAppletDemo1.st'
- 'JavaAppletDemo2' 'JavaAppletDemo2.st'
- 'JavaAppletDemo3' 'JavaAppletDemo3.st'
-
- 'JavaBrowser' 'JavaBrowser.st'
-
-) pairWiseDo:[:className :fileName |
- Smalltalk fileIn:fileName.
- "/ Smalltalk installAutoloadedClassNamed:className category:'autoloaded' package:'cg:java' revision:nil.
+files size > 0 ifTrue:[
+ files do:[:s|
+ '.' print.
+ Smalltalk fileIn:s.
+ ].
+ ' ' printCR.
].
+'done.' printCR.
!
-