Initial support for per-language edit support.
Some work on Smalltalk edit support, namely on electric blocks. Works fine,
but need more work to make it usable but not too intrusive.
"{ Package: 'jv:smallsense' }"
SmallSenseType subclass:#SmallSenseClassType
instanceVariableNames:'trustfullness klass'
classVariableNames:''
poolDictionaries:''
category:'SmallSense-Types'
!
!SmallSenseClassType methodsFor:'accessing'!
klass
^ klass
!
klass:aClass
klass := aClass.
"Some manual trustfullness tweaks"
klass == Object ifTrue:[
self trustfullnessAdd: -10.
]
"Modified: / 17-05-2012 / 19:59:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
trustfullness
^ trustfullness ? 20
"Modified: / 17-05-2012 / 19:35:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
trustfullness:something
trustfullness := something min: 100.
"Modified: / 17-05-2012 / 19:46:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!SmallSenseClassType methodsFor:'comparing'!
= another
^self class == another class
and:[klass == another klass]
"Modified: / 16-12-2011 / 13:38:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
hash
^ klass hash
"Modified: / 16-12-2011 / 13:38:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!SmallSenseClassType methodsFor:'enumerating'!
classesDo:aBlock
"Enumerate all classes that this type represents"
^ aBlock value: klass
"Modified: / 16-12-2011 / 13:33:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!SmallSenseClassType methodsFor:'operations'!
classSide
"superclass SmallSenseType says that I am responsible to implement this method"
^ self class new klass: klass class
"Modified: / 16-12-2011 / 13:21:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
instanceSide
"superclass SmallSenseType says that I am responsible to implement this method"
^ self class new klass: klass theNonMetaclass
"Modified: / 16-12-2011 / 13:23:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!SmallSenseClassType methodsFor:'printing & storing'!
printWithoutAnglesOn:aStream
"superclass SmallSenseType says that I am responsible to implement this method"
klass printOn: aStream
"Modified: / 16-12-2011 / 01:54:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!SmallSenseClassType methodsFor:'testing'!
isClassType
^true
"Created: / 16-12-2011 / 02:00:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!SmallSenseClassType class methodsFor:'documentation'!
version_HG
^ '$Changeset: <not expanded> $'
!
version_SVN
^ '$Id: SmallSenseClassType.st 8000 2012-05-17 23:16:11Z vranyj1 $'
! !