Separated JavaCompletionEngine and JavaCompletionEngineSimple.
*Simple variant does ony lexical analysis, whereas JavaCompletionEngine relies
on Eclipse parse tree.
--- a/Make.proto Tue May 13 16:34:38 2014 +0100
+++ b/Make.proto Tue May 13 17:38:10 2014 +0100
@@ -199,12 +199,12 @@
$(OUTDIR)SmallSense__Type.$(O) SmallSense__Type.$(H): SmallSense__Type.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__TypeHolder.$(O) SmallSense__TypeHolder.$(H): SmallSense__TypeHolder.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)jv_smallsense.$(O) jv_smallsense.$(H): jv_smallsense.st $(INCLUDE_TOP)/stx/libbasic/LibraryDefinition.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libbasic/ProjectDefinition.$(H) $(STCHDR)
+$(OUTDIR)SmallSense__AbstractJavaCompletionEngine.$(O) SmallSense__AbstractJavaCompletionEngine.$(H): SmallSense__AbstractJavaCompletionEngine.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__CompletionEngine.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__ClassInfo.$(O) SmallSense__ClassInfo.$(H): SmallSense__ClassInfo.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__Info.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__ClassPO.$(O) SmallSense__ClassPO.$(H): SmallSense__ClassPO.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__PO.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libwidg2/HierarchicalItem.$(H) $(STCHDR)
$(OUTDIR)SmallSense__ClassType.$(O) SmallSense__ClassType.$(H): SmallSense__ClassType.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__Type.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__ConstantPO.$(O) SmallSense__ConstantPO.$(H): SmallSense__ConstantPO.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__PO.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libwidg2/HierarchicalItem.$(H) $(STCHDR)
$(OUTDIR)SmallSense__GenericEditSupport.$(O) SmallSense__GenericEditSupport.$(H): SmallSense__GenericEditSupport.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__EditSupport.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)SmallSense__JavaCompletionEngineSimple.$(O) SmallSense__JavaCompletionEngineSimple.$(H): SmallSense__JavaCompletionEngineSimple.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__CompletionEngine.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__JavaEditSupport.$(O) SmallSense__JavaEditSupport.$(H): SmallSense__JavaEditSupport.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__EditSupport.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__JavaImportPO.$(O) SmallSense__JavaImportPO.$(H): SmallSense__JavaImportPO.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__PO.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libwidg2/HierarchicalItem.$(H) $(STCHDR)
$(OUTDIR)SmallSense__MethodInfo.$(O) SmallSense__MethodInfo.$(H): SmallSense__MethodInfo.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__Info.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
@@ -217,9 +217,11 @@
$(OUTDIR)SmallSense__UnionType.$(O) SmallSense__UnionType.$(H): SmallSense__UnionType.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__SmalltalkInferencerParameters.$(H) $(INCLUDE_TOP)/jv/smallsense/SmallSense__Type.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__UnknownType.$(O) SmallSense__UnknownType.$(H): SmallSense__UnknownType.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__Type.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__VariablePO.$(O) SmallSense__VariablePO.$(H): SmallSense__VariablePO.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__PO.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libwidg2/HierarchicalItem.$(H) $(STCHDR)
-$(OUTDIR)SmallSense__GroovyCompletionEngineSimple.$(O) SmallSense__GroovyCompletionEngineSimple.$(H): SmallSense__GroovyCompletionEngineSimple.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__CompletionEngine.$(H) $(INCLUDE_TOP)/jv/smallsense/SmallSense__JavaCompletionEngineSimple.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__GroovyEditSupport.$(O) SmallSense__GroovyEditSupport.$(H): SmallSense__GroovyEditSupport.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__EditSupport.$(H) $(INCLUDE_TOP)/jv/smallsense/SmallSense__JavaEditSupport.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)SmallSense__JavaCompletionEngine.$(O) SmallSense__JavaCompletionEngine.$(H): SmallSense__JavaCompletionEngine.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__AbstractJavaCompletionEngine.$(H) $(INCLUDE_TOP)/jv/smallsense/SmallSense__CompletionEngine.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)SmallSense__JavaCompletionEngineSimple.$(O) SmallSense__JavaCompletionEngineSimple.$(H): SmallSense__JavaCompletionEngineSimple.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__AbstractJavaCompletionEngine.$(H) $(INCLUDE_TOP)/jv/smallsense/SmallSense__CompletionEngine.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__MethodKeywordRestPO.$(O) SmallSense__MethodKeywordRestPO.$(H): SmallSense__MethodKeywordRestPO.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__MethodPO.$(H) $(INCLUDE_TOP)/jv/smallsense/SmallSense__PO.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libwidg2/HierarchicalItem.$(H) $(STCHDR)
+$(OUTDIR)SmallSense__GroovyCompletionEngineSimple.$(O) SmallSense__GroovyCompletionEngineSimple.$(H): SmallSense__GroovyCompletionEngineSimple.st $(INCLUDE_TOP)/jv/smallsense/SmallSense__AbstractJavaCompletionEngine.$(H) $(INCLUDE_TOP)/jv/smallsense/SmallSense__CompletionEngine.$(H) $(INCLUDE_TOP)/jv/smallsense/SmallSense__JavaCompletionEngineSimple.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)/stx/goodies/refactoryBrowser/lint/RBLintRule.$(H) $(INCLUDE_TOP)/stx/goodies/refactoryBrowser/lint/RBTransformationRule.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/CompiledCode.$(H) $(INCLUDE_TOP)/stx/libbasic/ConfigurableFeatures.$(H) $(INCLUDE_TOP)/stx/libbasic/Dictionary.$(H) $(INCLUDE_TOP)/stx/libbasic/ExecutableFunction.$(H) $(INCLUDE_TOP)/stx/libbasic/IdentityDictionary.$(H) $(INCLUDE_TOP)/stx/libbasic/Method.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libbasic/Set.$(H) $(INCLUDE_TOP)/stx/libbasic/UserPreferences.$(H) $(INCLUDE_TOP)/stx/libcomp/AssignmentNode.$(H) $(INCLUDE_TOP)/stx/libcomp/BlockNode.$(H) $(INCLUDE_TOP)/stx/libcomp/MessageNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseErrorNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/PrimaryNode.$(H) $(INCLUDE_TOP)/stx/libcomp/PrimitiveNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ReturnNode.$(H) $(INCLUDE_TOP)/stx/libcomp/StatementNode.$(H) $(INCLUDE_TOP)/stx/libcomp/VariableNode.$(H) $(INCLUDE_TOP)/stx/libhtml/HTMLDocumentFrame.$(H) $(INCLUDE_TOP)/stx/libhtml/HTMLDocumentView.$(H) $(INCLUDE_TOP)/stx/libtool/SystemBrowser.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__BackgroundSourceProcessingService.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__CodeCompletionService.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__CodeHighlightingService.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__CodeNavigationService.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__CodeViewService.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__NavigationState.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__NewSystemBrowser.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libwidg/EditTextView.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/TextCollector.$(H) $(INCLUDE_TOP)/stx/libwidg/TextView.$(H) $(INCLUDE_TOP)/stx/libwidg/Workspace.$(H) $(INCLUDE_TOP)/stx/libwidg2/DoWhatIMeanSupport.$(H) $(STCHDR)
# ENDMAKEDEPEND --- do not remove this line
--- a/Make.spec Tue May 13 16:34:38 2014 +0100
+++ b/Make.spec Tue May 13 17:38:10 2014 +0100
@@ -86,12 +86,12 @@
SmallSense::Type \
SmallSense::TypeHolder \
jv_smallsense \
+ SmallSense::AbstractJavaCompletionEngine \
SmallSense::ClassInfo \
SmallSense::ClassPO \
SmallSense::ClassType \
SmallSense::ConstantPO \
SmallSense::GenericEditSupport \
- SmallSense::JavaCompletionEngineSimple \
SmallSense::JavaEditSupport \
SmallSense::JavaImportPO \
SmallSense::MethodInfo \
@@ -104,9 +104,11 @@
SmallSense::UnionType \
SmallSense::UnknownType \
SmallSense::VariablePO \
+ SmallSense::GroovyEditSupport \
+ SmallSense::JavaCompletionEngine \
+ SmallSense::JavaCompletionEngineSimple \
+ SmallSense::MethodKeywordRestPO \
SmallSense::GroovyCompletionEngineSimple \
- SmallSense::GroovyEditSupport \
- SmallSense::MethodKeywordRestPO \
@@ -148,12 +150,12 @@
$(OUTDIR_SLASH)SmallSense__Type.$(O) \
$(OUTDIR_SLASH)SmallSense__TypeHolder.$(O) \
$(OUTDIR_SLASH)jv_smallsense.$(O) \
+ $(OUTDIR_SLASH)SmallSense__AbstractJavaCompletionEngine.$(O) \
$(OUTDIR_SLASH)SmallSense__ClassInfo.$(O) \
$(OUTDIR_SLASH)SmallSense__ClassPO.$(O) \
$(OUTDIR_SLASH)SmallSense__ClassType.$(O) \
$(OUTDIR_SLASH)SmallSense__ConstantPO.$(O) \
$(OUTDIR_SLASH)SmallSense__GenericEditSupport.$(O) \
- $(OUTDIR_SLASH)SmallSense__JavaCompletionEngineSimple.$(O) \
$(OUTDIR_SLASH)SmallSense__JavaEditSupport.$(O) \
$(OUTDIR_SLASH)SmallSense__JavaImportPO.$(O) \
$(OUTDIR_SLASH)SmallSense__MethodInfo.$(O) \
@@ -166,9 +168,11 @@
$(OUTDIR_SLASH)SmallSense__UnionType.$(O) \
$(OUTDIR_SLASH)SmallSense__UnknownType.$(O) \
$(OUTDIR_SLASH)SmallSense__VariablePO.$(O) \
+ $(OUTDIR_SLASH)SmallSense__GroovyEditSupport.$(O) \
+ $(OUTDIR_SLASH)SmallSense__JavaCompletionEngine.$(O) \
+ $(OUTDIR_SLASH)SmallSense__JavaCompletionEngineSimple.$(O) \
+ $(OUTDIR_SLASH)SmallSense__MethodKeywordRestPO.$(O) \
$(OUTDIR_SLASH)SmallSense__GroovyCompletionEngineSimple.$(O) \
- $(OUTDIR_SLASH)SmallSense__GroovyEditSupport.$(O) \
- $(OUTDIR_SLASH)SmallSense__MethodKeywordRestPO.$(O) \
$(OUTDIR_SLASH)extensions.$(O) \
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/SmallSense__AbstractJavaCompletionEngine.st Tue May 13 17:38:10 2014 +0100
@@ -0,0 +1,35 @@
+"{ Package: 'jv:smallsense' }"
+
+"{ NameSpace: SmallSense }"
+
+CompletionEngine subclass:#AbstractJavaCompletionEngine
+ instanceVariableNames:'class method'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'SmallSense-Java'
+!
+
+!AbstractJavaCompletionEngine methodsFor:'completion-helpers'!
+
+javaClassesDo: aBlock
+ | loader loaders |
+
+ loaders := Set new.
+ loaders := Set new.
+ 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.
+
+ context environment allClassesDo:[:cls|
+ (cls isJavaClass and:[loaders includes: cls classLoader]) ifTrue:[
+ aBlock value: cls.
+ ].
+ ].
+
+ "Created: / 04-10-2013 / 13:10:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 13-05-2014 / 12:38:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
--- a/SmallSense__GroovyCompletionEngineSimple.st Tue May 13 16:34:38 2014 +0100
+++ b/SmallSense__GroovyCompletionEngineSimple.st Tue May 13 17:38:10 2014 +0100
@@ -10,16 +10,6 @@
!
-!GroovyCompletionEngineSimple methodsFor:'completion-private'!
-
-complete
- super complete.
- ^ result.
-
- "Created: / 17-10-2013 / 00:39:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 03-02-2014 / 23:32:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-! !
-
!GroovyCompletionEngineSimple class methodsFor:'documentation'!
version_HG
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/SmallSense__JavaCompletionEngine.st Tue May 13 17:38:10 2014 +0100
@@ -0,0 +1,163 @@
+"{ Package: 'jv:smallsense' }"
+
+"{ NameSpace: SmallSense }"
+
+AbstractJavaCompletionEngine subclass:#JavaCompletionEngine
+ instanceVariableNames:'classTree methodTree'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'SmallSense-Java'
+!
+
+!JavaCompletionEngine methodsFor:'completion'!
+
+completeNode: node
+ Transcript
+ show: 'Java Simple Completion on node: ';
+ show: node printString;
+ show: ' [';
+ show: node class printString;
+ showCR: ']'.
+
+ "Created: / 20-10-2013 / 01:34:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaCompletionEngine methodsFor:'completion-individual'!
+
+addClassesStartingWith: prefix
+ self javaClassesDo:[:cls|
+ | name i |
+
+ name := cls lastName.
+ i := name lastIndexOf: $/.
+ ((name size >= (i + prefix size))
+ and:[(name at: i + 1) == prefix first
+ and:[(name at: i + prefix size) == prefix last
+ and:[(2 to: prefix size - 1) allSatisfy:[:o| (name at: i + o) == (prefix at: o)]]]])
+ ifTrue:[
+ result add: (ClassPO new subject: cls).
+ ].
+ ].
+
+ "Created: / 03-10-2013 / 11:16:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 20-10-2013 / 01:27:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+addFieldsStartingWith: prefix
+ | klass |
+
+ classTree notNil ifTrue:[
+ (classTree fields ? #()) do:[:field |
+ result add: (VariablePO instanceVariable: field name in: class).
+ ].
+ ] ifFalse:[
+ klass := class.
+ ].
+
+ [ klass notNil ] whileTrue:[
+ klass instVarNames do:[:nm |
+ result add: (VariablePO instanceVariable: nm in: klass).
+ ].
+ klass := klass superclass.
+ ].
+
+ "Created: / 03-10-2013 / 11:16:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 20-10-2013 / 02:04:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+addImportsStartingWith: prefix
+ | packages |
+
+ packages := Set new.
+
+ "/ Class imports...
+ self javaClassesDo:[:cls|
+ | name i |
+
+ name := cls javaName.
+ (cls isPublic and:[name startsWith: prefix]) ifTrue:[
+ result add: (JavaImportPO new subject: name; klass: cls; yourself).
+ packages add: cls javaPackage.
+ ].
+ ].
+ "/ Package imports...
+ packages do:[:each |
+ result add: (JavaImportPO new subject: (each , '.*'))
+ ].
+
+ "Created: / 19-10-2013 / 17:54:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 20-10-2013 / 00:35:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+addLocalsStartingWith: prefix
+ | queue |
+
+ methodTree isNil ifTrue:[ ^ self ].
+ methodTree scope isNil ifTrue:[ ^ self ].
+
+ queue := OrderedCollection with: methodTree scope.
+ [ queue notEmpty ] whileTrue:[
+ | scope |
+
+ scope := queue removeFirst.
+ 1 to: scope localIndex do:[:i|
+ | nm |
+
+ nm := (scope locals at: i) name.
+ (nm startsWith: prefix) ifTrue:[
+ result add: (VariablePO instanceVariable: nm in: class).
+ ].
+ ].
+ ].
+
+ "Created: / 03-10-2013 / 17:46:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 20-10-2013 / 02:15:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+addMethodsForReceiver: maybeReceiverToken startingWith: prefix
+ ^ self addMethodsStartingWith: prefix
+
+ "Created: / 03-10-2013 / 17:46:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+addMethodsStartingWith: prefix
+ ^ self addMethodsStartingWith: prefix stripOff: nil filter: [:m | m isJavaMethod ]
+
+ "Created: / 03-10-2013 / 18:01:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 08-04-2014 / 21:37:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaCompletionEngine methodsFor:'completion-private'!
+
+complete
+
+ | position entry node |
+
+ position := context codeView characterPositionOfCursor.
+ codeView syntaxElements notEmptyOrNil ifTrue:[
+ entry := codeView syntaxElements atCharacterPosition: position - 1.
+ entry notNil ifTrue:[
+ node := entry node
+ ].
+ codeView syntaxElements tree notNil ifTrue:[
+ classTree := (codeView syntaxElements tree types ? #()) detect:[:t | (position - 1) between: t declarationSourceStart and: t declarationSourceEnd ] ifNone:[nil].
+ classTree notNil ifTrue:[
+ methodTree := (classTree methods ? #()) detect:[:m | (position - 1) between: m declarationSourceStart and: m declarationSourceEnd ] ifNone:[nil].
+ ]
+ ].
+ ].
+
+ context node: node position: position.
+
+ node isNil ifTrue:[
+ result := JavaCompletionEngineSimple new complete: context.
+ ] ifFalse:[
+ self completeNode: node.
+ ].
+
+ ^ result
+
+ "Created: / 02-10-2013 / 13:55:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 13-05-2014 / 17:21:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
--- a/SmallSense__JavaCompletionEngineSimple.st Tue May 13 16:34:38 2014 +0100
+++ b/SmallSense__JavaCompletionEngineSimple.st Tue May 13 17:38:10 2014 +0100
@@ -2,28 +2,95 @@
"{ NameSpace: SmallSense }"
-CompletionEngine subclass:#JavaCompletionEngineSimple
- instanceVariableNames:'class classTree method methodTree'
+AbstractJavaCompletionEngine subclass:#JavaCompletionEngineSimple
+ instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
category:'SmallSense-Java'
!
-!JavaCompletionEngineSimple methodsFor:'completion'!
+!JavaCompletionEngineSimple methodsFor:'completion-individual'!
+
+addClassesStartingWith: prefix
+ self javaClassesDo:[:cls|
+ | name i |
+
+ name := cls lastName.
+ i := name lastIndexOf: $/.
+ ((name size >= (i + prefix size))
+ and:[(name at: i + 1) == prefix first
+ and:[(name at: i + prefix size) == prefix last
+ and:[(2 to: prefix size - 1) allSatisfy:[:o| (name at: i + o) == (prefix at: o)]]]])
+ ifTrue:[
+ result add: (ClassPO new subject: cls).
+ ].
+ ].
-completeNode: node
- Transcript
- show: 'Java Simple Completion on node: ';
- show: node printString;
- show: ' [';
- show: node class printString;
- showCR: ']'.
+ "Created: / 03-10-2013 / 11:16:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 20-10-2013 / 01:27:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+addFieldsStartingWith: prefix
+ | klass |
- "Created: / 20-10-2013 / 01:34:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ [ klass notNil ] whileTrue:[
+ klass instVarNames do:[:nm |
+ result add: (VariablePO instanceVariable: nm in: klass).
+ ].
+ klass := klass superclass.
+ ].
+
+ "Created: / 03-10-2013 / 11:16:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 13-05-2014 / 17:29:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
-completeSimple
+addImportsStartingWith: prefix
+ | packages |
+
+ packages := Set new.
+
+ "/ Class imports...
+ self javaClassesDo:[:cls|
+ | name i |
+
+ name := cls javaName.
+ (cls isPublic and:[name startsWith: prefix]) ifTrue:[
+ result add: (JavaImportPO new subject: name; klass: cls; yourself).
+ packages add: cls javaPackage.
+ ].
+ ].
+ "/ Package imports...
+ packages do:[:each |
+ result add: (JavaImportPO new subject: (each , '.*'))
+ ].
+
+ "Created: / 19-10-2013 / 17:54:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 20-10-2013 / 00:35:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+addLocalsStartingWith: prefix
+
+ "Created: / 03-10-2013 / 17:46:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 13-05-2014 / 17:29:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+addMethodsForReceiver: maybeReceiverToken startingWith: prefix
+ ^ self addMethodsStartingWith: prefix
+
+ "Created: / 03-10-2013 / 17:46:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+addMethodsStartingWith: prefix
+ ^ self addMethodsStartingWith: prefix stripOff: nil filter: [:m | m isJavaMethod ]
+
+ "Created: / 03-10-2013 / 18:01:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 08-04-2014 / 21:37:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaCompletionEngineSimple methodsFor:'completion-private'!
+
+complete
| line col scanner token tokens values startPositions stopPositions maybeReceiverToken |
line := codeView listAt: codeView cursorLine.
@@ -124,170 +191,8 @@
^ result
- "Created: / 20-10-2013 / 01:32:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-! !
-
-!JavaCompletionEngineSimple methodsFor:'completion-helpers'!
-
-javaClassesDo: aBlock
- | loader loaders |
-
- loaders := Set new.
- loaders := Set new.
- 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.
-
- context environment allClassesDo:[:cls|
- (cls isJavaClass and:[loaders includes: cls classLoader]) ifTrue:[
- aBlock value: cls.
- ].
- ].
-
- "Created: / 04-10-2013 / 13:10:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 13-05-2014 / 12:38:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-! !
-
-!JavaCompletionEngineSimple methodsFor:'completion-individual'!
-
-addClassesStartingWith: prefix
- self javaClassesDo:[:cls|
- | name i |
-
- name := cls lastName.
- i := name lastIndexOf: $/.
- ((name size >= (i + prefix size))
- and:[(name at: i + 1) == prefix first
- and:[(name at: i + prefix size) == prefix last
- and:[(2 to: prefix size - 1) allSatisfy:[:o| (name at: i + o) == (prefix at: o)]]]])
- ifTrue:[
- result add: (ClassPO new subject: cls).
- ].
- ].
-
- "Created: / 03-10-2013 / 11:16:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 20-10-2013 / 01:27:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-addFieldsStartingWith: prefix
- | klass |
-
- classTree notNil ifTrue:[
- (classTree fields ? #()) do:[:field |
- result add: (VariablePO instanceVariable: field name in: class).
- ].
- ] ifFalse:[
- klass := class.
- ].
-
- [ klass notNil ] whileTrue:[
- klass instVarNames do:[:nm |
- result add: (VariablePO instanceVariable: nm in: klass).
- ].
- klass := klass superclass.
- ].
-
- "Created: / 03-10-2013 / 11:16:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 20-10-2013 / 02:04:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-addImportsStartingWith: prefix
- | packages |
-
- packages := Set new.
-
- "/ Class imports...
- self javaClassesDo:[:cls|
- | name i |
-
- name := cls javaName.
- (cls isPublic and:[name startsWith: prefix]) ifTrue:[
- result add: (JavaImportPO new subject: name; klass: cls; yourself).
- packages add: cls javaPackage.
- ].
- ].
- "/ Package imports...
- packages do:[:each |
- result add: (JavaImportPO new subject: (each , '.*'))
- ].
-
- "Created: / 19-10-2013 / 17:54:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 20-10-2013 / 00:35:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-addLocalsStartingWith: prefix
- | queue |
-
- methodTree isNil ifTrue:[ ^ self ].
- methodTree scope isNil ifTrue:[ ^ self ].
-
- queue := OrderedCollection with: methodTree scope.
- [ queue notEmpty ] whileTrue:[
- | scope |
-
- scope := queue removeFirst.
- 1 to: scope localIndex do:[:i|
- | nm |
-
- nm := (scope locals at: i) name.
- (nm startsWith: prefix) ifTrue:[
- result add: (VariablePO instanceVariable: nm in: class).
- ].
- ].
- ].
-
- "Created: / 03-10-2013 / 17:46:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 20-10-2013 / 02:15:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-addMethodsForReceiver: maybeReceiverToken startingWith: prefix
- ^ self addMethodsStartingWith: prefix
-
- "Created: / 03-10-2013 / 17:46:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-addMethodsStartingWith: prefix
- ^ self addMethodsStartingWith: prefix stripOff: nil filter: [:m | m isJavaMethod ]
-
- "Created: / 03-10-2013 / 18:01:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 08-04-2014 / 21:37:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-! !
-
-!JavaCompletionEngineSimple methodsFor:'completion-private'!
-
-complete
-
- | position entry node |
-
- position := context codeView characterPositionOfCursor.
- codeView syntaxElements notEmptyOrNil ifTrue:[
- entry := codeView syntaxElements atCharacterPosition: position - 1.
- entry notNil ifTrue:[
- node := entry node
- ].
- codeView syntaxElements tree notNil ifTrue:[
- classTree := (codeView syntaxElements tree types ? #()) detect:[:t | (position - 1) between: t declarationSourceStart and: t declarationSourceEnd ] ifNone:[nil].
- classTree notNil ifTrue:[
- methodTree := (classTree methods ? #()) detect:[:m | (position - 1) between: m declarationSourceStart and: m declarationSourceEnd ] ifNone:[nil].
- ]
- ].
- ].
-
- context node: node position: position.
-
- node isNil ifTrue:[
- self completeSimple.
- ] ifFalse:[
- self completeNode: node.
- ].
-
- ^ result
-
"Created: / 02-10-2013 / 13:55:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 21-01-2014 / 23:22:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 13-05-2014 / 17:21:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!JavaCompletionEngineSimple class methodsFor:'documentation'!
--- a/abbrev.stc Tue May 13 16:34:38 2014 +0100
+++ b/abbrev.stc Tue May 13 17:38:10 2014 +0100
@@ -40,13 +40,13 @@
SmallSense::Type SmallSense__Type jv:smallsense 'SmallSense-Smalltalk-Types' 0
SmallSense::TypeHolder SmallSense__TypeHolder jv:smallsense 'SmallSense-Smalltalk-Types' 0
jv_smallsense jv_smallsense jv:smallsense '* Projects & Packages *' 3
+SmallSense::AbstractJavaCompletionEngine SmallSense__AbstractJavaCompletionEngine jv:smallsense 'SmallSense-Java' 0
SmallSense::ClassInfo SmallSense__ClassInfo jv:smallsense 'SmallSense-Smalltalk-Types-Info' 0
SmallSense::ClassPO SmallSense__ClassPO jv:smallsense 'SmallSense-Core-Interface-PO' 0
SmallSense::ClassType SmallSense__ClassType jv:smallsense 'SmallSense-Smalltalk-Types' 0
SmallSense::ConstantPO SmallSense__ConstantPO jv:smallsense 'SmallSense-Core-Interface-PO' 0
SmallSense::FinderTests SmallSense__FinderTests jv:smallsense 'SmallSense-Tests' 1
SmallSense::GenericEditSupport SmallSense__GenericEditSupport jv:smallsense 'SmallSense-Core-Services' 0
-SmallSense::JavaCompletionEngineSimple SmallSense__JavaCompletionEngineSimple jv:smallsense 'SmallSense-Java' 0
SmallSense::JavaEditSupport SmallSense__JavaEditSupport jv:smallsense 'SmallSense-Java' 0
SmallSense::JavaImportPO SmallSense__JavaImportPO jv:smallsense 'SmallSense-Java-Interface-PO' 0
SmallSense::MethodInfo SmallSense__MethodInfo jv:smallsense 'SmallSense-Smalltalk-Types-Info' 0
@@ -61,6 +61,8 @@
SmallSense::UnionType SmallSense__UnionType jv:smallsense 'SmallSense-Smalltalk-Types' 0
SmallSense::UnknownType SmallSense__UnknownType jv:smallsense 'SmallSense-Smalltalk-Types' 1
SmallSense::VariablePO SmallSense__VariablePO jv:smallsense 'SmallSense-Core-Interface-PO' 0
+SmallSense::GroovyEditSupport SmallSense__GroovyEditSupport jv:smallsense 'SmallSense-Groovy' 0
+SmallSense::JavaCompletionEngine SmallSense__JavaCompletionEngine jv:smallsense 'SmallSense-Java' 0
+SmallSense::JavaCompletionEngineSimple SmallSense__JavaCompletionEngineSimple jv:smallsense 'SmallSense-Java' 0
+SmallSense::MethodKeywordRestPO SmallSense__MethodKeywordRestPO jv:smallsense 'SmallSense-Core-Interface-PO' 0
SmallSense::GroovyCompletionEngineSimple SmallSense__GroovyCompletionEngineSimple jv:smallsense 'SmallSense-Groovy' 0
-SmallSense::GroovyEditSupport SmallSense__GroovyEditSupport jv:smallsense 'SmallSense-Groovy' 0
-SmallSense::MethodKeywordRestPO SmallSense__MethodKeywordRestPO jv:smallsense 'SmallSense-Core-Interface-PO' 0
--- a/bc.mak Tue May 13 16:34:38 2014 +0100
+++ b/bc.mak Tue May 13 17:38:10 2014 +0100
@@ -123,12 +123,12 @@
$(OUTDIR)SmallSense__Type.$(O) SmallSense__Type.$(H): SmallSense__Type.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__TypeHolder.$(O) SmallSense__TypeHolder.$(H): SmallSense__TypeHolder.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)jv_smallsense.$(O) jv_smallsense.$(H): jv_smallsense.st $(INCLUDE_TOP)\stx\libbasic\LibraryDefinition.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libbasic\ProjectDefinition.$(H) $(STCHDR)
+$(OUTDIR)SmallSense__AbstractJavaCompletionEngine.$(O) SmallSense__AbstractJavaCompletionEngine.$(H): SmallSense__AbstractJavaCompletionEngine.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__CompletionEngine.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__ClassInfo.$(O) SmallSense__ClassInfo.$(H): SmallSense__ClassInfo.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__Info.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__ClassPO.$(O) SmallSense__ClassPO.$(H): SmallSense__ClassPO.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__PO.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libwidg2\HierarchicalItem.$(H) $(STCHDR)
$(OUTDIR)SmallSense__ClassType.$(O) SmallSense__ClassType.$(H): SmallSense__ClassType.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__Type.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__ConstantPO.$(O) SmallSense__ConstantPO.$(H): SmallSense__ConstantPO.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__PO.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libwidg2\HierarchicalItem.$(H) $(STCHDR)
$(OUTDIR)SmallSense__GenericEditSupport.$(O) SmallSense__GenericEditSupport.$(H): SmallSense__GenericEditSupport.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__EditSupport.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)SmallSense__JavaCompletionEngineSimple.$(O) SmallSense__JavaCompletionEngineSimple.$(H): SmallSense__JavaCompletionEngineSimple.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__CompletionEngine.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__JavaEditSupport.$(O) SmallSense__JavaEditSupport.$(H): SmallSense__JavaEditSupport.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__EditSupport.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__JavaImportPO.$(O) SmallSense__JavaImportPO.$(H): SmallSense__JavaImportPO.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__PO.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libwidg2\HierarchicalItem.$(H) $(STCHDR)
$(OUTDIR)SmallSense__MethodInfo.$(O) SmallSense__MethodInfo.$(H): SmallSense__MethodInfo.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__Info.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
@@ -141,9 +141,11 @@
$(OUTDIR)SmallSense__UnionType.$(O) SmallSense__UnionType.$(H): SmallSense__UnionType.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__SmalltalkInferencerParameters.$(H) $(INCLUDE_TOP)\jv\smallsense\SmallSense__Type.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__UnknownType.$(O) SmallSense__UnknownType.$(H): SmallSense__UnknownType.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__Type.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__VariablePO.$(O) SmallSense__VariablePO.$(H): SmallSense__VariablePO.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__PO.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libwidg2\HierarchicalItem.$(H) $(STCHDR)
-$(OUTDIR)SmallSense__GroovyCompletionEngineSimple.$(O) SmallSense__GroovyCompletionEngineSimple.$(H): SmallSense__GroovyCompletionEngineSimple.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__CompletionEngine.$(H) $(INCLUDE_TOP)\jv\smallsense\SmallSense__JavaCompletionEngineSimple.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__GroovyEditSupport.$(O) SmallSense__GroovyEditSupport.$(H): SmallSense__GroovyEditSupport.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__EditSupport.$(H) $(INCLUDE_TOP)\jv\smallsense\SmallSense__JavaEditSupport.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)SmallSense__JavaCompletionEngine.$(O) SmallSense__JavaCompletionEngine.$(H): SmallSense__JavaCompletionEngine.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__AbstractJavaCompletionEngine.$(H) $(INCLUDE_TOP)\jv\smallsense\SmallSense__CompletionEngine.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)SmallSense__JavaCompletionEngineSimple.$(O) SmallSense__JavaCompletionEngineSimple.$(H): SmallSense__JavaCompletionEngineSimple.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__AbstractJavaCompletionEngine.$(H) $(INCLUDE_TOP)\jv\smallsense\SmallSense__CompletionEngine.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__MethodKeywordRestPO.$(O) SmallSense__MethodKeywordRestPO.$(H): SmallSense__MethodKeywordRestPO.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__MethodPO.$(H) $(INCLUDE_TOP)\jv\smallsense\SmallSense__PO.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libwidg2\HierarchicalItem.$(H) $(STCHDR)
+$(OUTDIR)SmallSense__GroovyCompletionEngineSimple.$(O) SmallSense__GroovyCompletionEngineSimple.$(H): SmallSense__GroovyCompletionEngineSimple.st $(INCLUDE_TOP)\jv\smallsense\SmallSense__AbstractJavaCompletionEngine.$(H) $(INCLUDE_TOP)\jv\smallsense\SmallSense__CompletionEngine.$(H) $(INCLUDE_TOP)\jv\smallsense\SmallSense__JavaCompletionEngineSimple.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\lint\RBLintRule.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\lint\RBTransformationRule.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\CompiledCode.$(H) $(INCLUDE_TOP)\stx\libbasic\ConfigurableFeatures.$(H) $(INCLUDE_TOP)\stx\libbasic\Dictionary.$(H) $(INCLUDE_TOP)\stx\libbasic\ExecutableFunction.$(H) $(INCLUDE_TOP)\stx\libbasic\IdentityDictionary.$(H) $(INCLUDE_TOP)\stx\libbasic\Method.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libbasic\Set.$(H) $(INCLUDE_TOP)\stx\libbasic\UserPreferences.$(H) $(INCLUDE_TOP)\stx\libcomp\AssignmentNode.$(H) $(INCLUDE_TOP)\stx\libcomp\BlockNode.$(H) $(INCLUDE_TOP)\stx\libcomp\MessageNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseErrorNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\PrimaryNode.$(H) $(INCLUDE_TOP)\stx\libcomp\PrimitiveNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ReturnNode.$(H) $(INCLUDE_TOP)\stx\libcomp\StatementNode.$(H) $(INCLUDE_TOP)\stx\libcomp\VariableNode.$(H) $(INCLUDE_TOP)\stx\libhtml\HTMLDocumentFrame.$(H) $(INCLUDE_TOP)\stx\libhtml\HTMLDocumentView.$(H) $(INCLUDE_TOP)\stx\libtool\SystemBrowser.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__BackgroundSourceProcessingService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__CodeCompletionService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__CodeHighlightingService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__CodeNavigationService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__CodeViewService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NavigationState.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NewSystemBrowser.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libwidg\EditTextView.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\TextCollector.$(H) $(INCLUDE_TOP)\stx\libwidg\TextView.$(H) $(INCLUDE_TOP)\stx\libwidg\Workspace.$(H) $(INCLUDE_TOP)\stx\libwidg2\DoWhatIMeanSupport.$(H) $(STCHDR)
# ENDMAKEDEPEND --- do not remove this line
--- a/jv_smallsense.st Tue May 13 16:34:38 2014 +0100
+++ b/jv_smallsense.st Tue May 13 17:38:10 2014 +0100
@@ -97,7 +97,7 @@
#'stx:libbasic2' "BackgroundQueueProcessingJob - referenced by SmallSense::Manager>>initialize "
#'stx:libbasic3' "ChangeSet - referenced by RBTransformationRule>>fixes: "
#'stx:libjava' "JavaClass - referenced by SmallSense::CodeNavigationService::Navigator>>navigateToTypeReference: "
- #'stx:libjava/tools' "JavaScanner - referenced by SmallSense::JavaCompletionEngineSimple>>completeSimple "
+ #'stx:libjava/tools' "JavaScanner - referenced by SmallSense::JavaCompletionEngineSimple>>complete "
)
!
@@ -201,13 +201,13 @@
#'SmallSense::Type'
#'SmallSense::TypeHolder'
#'jv_smallsense'
+ #'SmallSense::AbstractJavaCompletionEngine'
#'SmallSense::ClassInfo'
#'SmallSense::ClassPO'
#'SmallSense::ClassType'
#'SmallSense::ConstantPO'
(#'SmallSense::FinderTests' autoload)
#'SmallSense::GenericEditSupport'
- #'SmallSense::JavaCompletionEngineSimple'
#'SmallSense::JavaEditSupport'
#'SmallSense::JavaImportPO'
#'SmallSense::MethodInfo'
@@ -222,9 +222,11 @@
#'SmallSense::UnionType'
#'SmallSense::UnknownType'
#'SmallSense::VariablePO'
+ #'SmallSense::GroovyEditSupport'
+ #'SmallSense::JavaCompletionEngine'
+ #'SmallSense::JavaCompletionEngineSimple'
+ #'SmallSense::MethodKeywordRestPO'
#'SmallSense::GroovyCompletionEngineSimple'
- #'SmallSense::GroovyEditSupport'
- #'SmallSense::MethodKeywordRestPO'
)
!
--- a/libInit.cc Tue May 13 16:34:38 2014 +0100
+++ b/libInit.cc Tue May 13 17:38:10 2014 +0100
@@ -63,12 +63,12 @@
_SmallSense__Type_Init(pass,__pRT__,snd);
_SmallSense__TypeHolder_Init(pass,__pRT__,snd);
_jv_137smallsense_Init(pass,__pRT__,snd);
+_SmallSense__AbstractJavaCompletionEngine_Init(pass,__pRT__,snd);
_SmallSense__ClassInfo_Init(pass,__pRT__,snd);
_SmallSense__ClassPO_Init(pass,__pRT__,snd);
_SmallSense__ClassType_Init(pass,__pRT__,snd);
_SmallSense__ConstantPO_Init(pass,__pRT__,snd);
_SmallSense__GenericEditSupport_Init(pass,__pRT__,snd);
-_SmallSense__JavaCompletionEngineSimple_Init(pass,__pRT__,snd);
_SmallSense__JavaEditSupport_Init(pass,__pRT__,snd);
_SmallSense__JavaImportPO_Init(pass,__pRT__,snd);
_SmallSense__MethodInfo_Init(pass,__pRT__,snd);
@@ -81,9 +81,11 @@
_SmallSense__UnionType_Init(pass,__pRT__,snd);
_SmallSense__UnknownType_Init(pass,__pRT__,snd);
_SmallSense__VariablePO_Init(pass,__pRT__,snd);
+_SmallSense__GroovyEditSupport_Init(pass,__pRT__,snd);
+_SmallSense__JavaCompletionEngine_Init(pass,__pRT__,snd);
+_SmallSense__JavaCompletionEngineSimple_Init(pass,__pRT__,snd);
+_SmallSense__MethodKeywordRestPO_Init(pass,__pRT__,snd);
_SmallSense__GroovyCompletionEngineSimple_Init(pass,__pRT__,snd);
-_SmallSense__GroovyEditSupport_Init(pass,__pRT__,snd);
-_SmallSense__MethodKeywordRestPO_Init(pass,__pRT__,snd);
_jv_137smallsense_extensions_Init(pass,__pRT__,snd);
__END_PACKAGE__();
--- a/smallsense.rc Tue May 13 16:34:38 2014 +0100
+++ b/smallsense.rc Tue May 13 17:38:10 2014 +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", "Tue, 13 May 2014 11:39:18 GMT\0"
+ VALUE "ProductDate", "Tue, 13 May 2014 16:36:24 GMT\0"
END
END