[Pkg] Monticello Public: Monticello.impl-mtf.531.mcz
squeaksource-noreply at iam.unibe.ch
squeaksource-noreply at iam.unibe.ch
Thu Jun 12 20:07:46 UTC 2008
A new version of Monticello.impl was added to project Monticello Public:
http://www.squeaksource.com/mc/Monticello.impl-mtf.531.mcz
==================== Summary ====================
Name: Monticello.impl-mtf.531
Author: mtf
Time: 12 June 2008, 1:06:46 pm
UUID: 5be17b0a-705e-4ae2-b4a2-2b2ba122ad88
Ancestors: Monticello.impl-mtf.530
simplified MCClassDefinition>>#edLoad
fixed MC to pass the category name of a class to SystemEditor
Fixed MCMethodDefinition to tell SystemEditor whether the method is instance-side or class-side
=============== Diff against Monticello.impl-mtf.530 ===============
Item was changed:
SystemOrganization addCategory: #'Monticello-Base'!
SystemOrganization addCategory: #'Monticello-Chunk Format'!
SystemOrganization addCategory: #'Monticello-Loading'!
SystemOrganization addCategory: #'Monticello-Merging'!
SystemOrganization addCategory: #'Monticello-Modeling'!
- SystemOrganization addCategory: #'Monticello-Patching'!
- SystemOrganization addCategory: #'Monticello-Repositories'!
- SystemOrganization addCategory: #'Monticello-Storing'!
- SystemOrganization addCategory: #'Monticello-UI'!
- SystemOrganization addCategory: #'Monticello-Versioning'!
SystemOrganization addCategory: #'Monticello-Orphanage'!
+ SystemOrganization addCategory: #'Monticello-Patching'!
+ SystemOrganization addCategory: #'Monticello-Repositories'!
+ SystemOrganization addCategory: #'Monticello-Storing'!
+ SystemOrganization addCategory: #'Monticello-UI'!
+ SystemOrganization addCategory: #'Monticello-Versioning'!
Item was changed:
----- Method: MCMethodDefinition>>edLoad: (in category 'system editor') -----
edLoad: editor
"priorMethodOrNil := self actualClass compiledMethodAt: selector ifAbsent: [nil]."
+ | classEditor |
+ classEditor := editor at: className.
+ classIsMeta ifTrue: [classEditor := classEditor class].
+ methodAndNode := classEditor
- methodAndNode := (editor at: className)
compile: self source
classified: self category
withStamp: timeStamp
notifying: requestor.
^ false "dont ask for edPostLoad, switch our notifications off not sure if needed with SystemEditor-#commit"
!
Item was changed:
----- Method: MCClassDefinition>>edLoad: (in category 'system editor') -----
edLoad: editor
+ | theClass |
+ theClass := (editor at: superclassName) subclass: name
+ instanceVariableNames: (self stringForVariablesOfType: #isInstanceVariable)
+ classVariableNames: (self stringForVariablesOfType: #isClassVariable)
+ poolDictionaries: (self stringForVariablesOfType: #isPoolImport)
+ category: category.
- | new old theClass theSuperclass |
-
- theClass := editor at: name.
- theSuperclass := editor at: superclassName.
-
- theClass superclass = theSuperclass ifFalse: [ theClass superclass: theSuperclass ].
-
- theClass subject typeOfClass = type ifFalse: [ theClass typeOfClass: type ].
+ theClass typeOfClass: type.
+ theClass class instanceVariableNames: (self stringForVariablesOfType: #isClassInstanceVariable).
+ theClass classComment: comment stamp: commentStamp.
- old := theClass instVarNames.
- new := self selectVariables: #isInstanceVariable.
- (old difference: new) do: [ :iv | theClass removeInstVarName: iv ].
- (new difference: old) do: [ :iv | theClass addInstVarName: iv ].
-
- old := theClass classVarNames.
- new := self selectVariables: #isClassVariable.
- (old difference: new) do: [ :iv | theClass removeClassVarName: iv ].
- (new difference: old) do: [ :iv | theClass addClassVarName: iv ].
-
- old := theClass sharedPools.
- new := self selectVariables: #isPoolImport.
- (old difference: new) do: [ :iv | theClass removeSharedPool: iv ].
- (new difference: old) do: [ :iv | theClass addSharedPool: iv ].
-
- old := theClass class instVarNames.
- new := self selectVariables: #isClassInstanceVariable.
- (old difference: new) do: [ :iv | theClass class removeInstVarName: iv ].
- (new difference: old) do: [ :iv | theClass class addInstVarName: iv ].
-
- self hasComment ifTrue: [ theClass classComment: comment stamp: commentStamp ].
-
^ false "we dont need an edPostload"!
More information about the Packages
mailing list