[squeak-dev] The Inbox: Monticello-fbs.543.mcz
commits at source.squeak.org
commits at source.squeak.org
Wed May 8 20:40:27 UTC 2013
Frank Shearar uploaded a new version of Monticello to project The Inbox:
http://source.squeak.org/inbox/Monticello-fbs.543.mcz
==================== Summary ====================
Name: Monticello-fbs.543
Author: fbs
Time: 8 May 2013, 9:40:15.843 pm
UUID: 1422fea2-9764-4588-8e26-508d1d1f293f
Ancestors: Monticello-bf.542
Allow MC packages to be loaded into the current environment.
=============== Diff against Monticello-bf.542 ===============
Item was changed:
----- Method: MCClassDefinition>>createClass (in category 'installing') -----
createClass
+ | env superClass class composition |
- | superClass class composition |
superClass := superclassName == #nil ifFalse:
[Smalltalk at: superclassName].
+ env := EnvironmentRequest signal ifNil: [superClass environment].
[class := (ClassBuilder new)
name: name
+ inEnvironment: env
- inEnvironment: superClass environment
subclassOf: superClass
type: type
instanceVariableNames: self instanceVariablesString
classVariableNames: self classVariablesString
poolDictionaries: self sharedPoolsString
category: category.
] on: Warning, DuplicateVariableError do:[:ex| ex resume].
"The following is written to support traits unloading"
composition := self traitComposition ifNil: [Array new] ifNotNil: [:traitComposition | Compiler evaluate: traitComposition].
(composition isCollection and:[composition isEmpty and:[class traitComposition isEmpty]]) ifFalse:[
class setTraitComposition: composition asTraitComposition.
].
composition := self classTraitComposition ifNil: [Array new] ifNotNil: [:traitComposition | Compiler evaluate: traitComposition].
(composition isCollection and:[composition isEmpty and:[class class traitComposition isEmpty]]) ifFalse:[
class class setTraitComposition: composition asTraitComposition.
].
^class!
More information about the Squeak-dev
mailing list
|