class: SmallSense::SmalltalkCompletionEngine
changed: #javaClassesDo:
removed prerequisite dependency on libjava
--- a/SmallSense__SmalltalkCompletionEngine.st Mon Mar 23 17:28:56 2015 +0100
+++ b/SmallSense__SmalltalkCompletionEngine.st Mon Mar 23 17:56:17 2015 +0100
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
"
stx:goodies/smallsense - A productivity plugin for Smalltalk/X IDE
Copyright (C) 2013-2014 Jan Vrany
@@ -117,20 +119,23 @@
!SmalltalkCompletionEngine methodsFor:'completion-helpers'!
javaClassesDo: aBlock
- | class loader loaders |
+ | class loader loaders javaVM |
+
+ (javaVM := Smalltalk at:#JavaVM) isNil ifTrue:[^ self].
class := collector klass.
loaders := Set new.
- loader := (class notNil and:[class isJavaClass]) ifTrue:[class classLoader] ifFalse:[JavaVM systemClassLoader].
+ loader := (class notNil and:[class isJavaClass])
+ ifTrue:[class classLoader]
+ ifFalse:[javaVM systemClassLoader].
[ loader notNil ] whileTrue:[
loaders add: loader.
loader := loader instVarNamed: #parent.
].
loaders add: nil.
- JavaVM registry allClassesDo:[:cls|
+ javaVM registry allClassesDo:[:cls|
(cls isAnonymous not and:[(loaders includes: cls classLoader)]) ifTrue:[
-
aBlock value: cls.
].
].
@@ -568,13 +573,21 @@
!SmalltalkCompletionEngine class methodsFor:'documentation'!
+version
+ ^ '$Header: /cvs/stx/stx/goodies/smallsense/SmallSense__SmalltalkCompletionEngine.st,v 1.2 2015-03-23 16:56:17 cg Exp $'
+!
+
+version_CVS
+ ^ '$Path: stx/goodies/smallsense/SmallSense__SmalltalkCompletionEngine.st, Version: 1.0, User: cg, Time: 2015-03-23T17:57:02.930+01$'
+!
+
version_HG
^ '$Changeset: <not expanded> $'
!
version_SVN
- ^ '$Id$'
+ ^ '$Id: SmallSense__SmalltalkCompletionEngine.st,v 1.2 2015-03-23 16:56:17 cg Exp $'
! !