[squeak-dev] The Inbox: Collections-cwp.484.mcz
Levente Uzonyi
leves at elte.hu
Mon Aug 13 23:01:03 UTC 2012
On Mon, 13 Aug 2012, commits at source.squeak.org wrote:
> A new version of Collections was added to project The Inbox:
> http://source.squeak.org/inbox/Collections-cwp.484.mcz
>
> ==================== Summary ====================
>
> Name: Collections-cwp.484
> Author: cwp
> Time: 13 August 2012, 3:57:08.399 pm
> UUID: 6e37e40a-c863-44bd-be92-561231a1e429
> Ancestors: Collections-fbs.483
>
> Make Character>>tokenish to accept $_ if the global preference is enabled.
>
> =============== Diff against Collections-fbs.483 ===============
>
> Item was changed:
> ----- Method: Character>>tokenish (in category 'testing') -----
> tokenish
> "Answer whether the receiver is a valid token-character--letter, digit, or
> colon."
>
> + self == $_
> + ifTrue: [ Scanner prefAllowUnderscoreSelectors ]
> + ifFalse: [ self == $: or: [ self isLetter or: [ self isDigit ] ] ]!
> - ^self isLetter or: [self isDigit or: [self = $:]]!
>
> Item was added:
> + ----- Method: WeakRegistry class>>migrateOldRegistries (in category 'migrating registry') -----
> + migrateOldRegistries
It sneaked back again, I wonder where did it come from.
Levente
> + Smalltalk at: #WeakFinalizationRegistry ifAbsent: [ ^ self "already done" ].
> +
> + Smalltalk recreateSpecialObjectsArray.
> + WeakArray restartFinalizationProcess.
> +
> + Smalltalk garbageCollect; garbageCollect.
> +
> + "leave no chance to interrupt migration"
> + Compiler evaluate: '
> + [ | old new oldClass newClass |
> + old := OrderedCollection new.
> + new := OrderedCollection new.
> + WeakRegistry allInstancesDo: [:registry | | newr |
> + old add: registry.
> + newr := WeakFinalizationRegistry basicNew initialize.
> + registry migrateTo: newr.
> + new add: newr ].
> + old asArray elementsForwardIdentityTo: new asArray.
> +
> + oldClass := WeakRegistry.
> + newClass := WeakFinalizationRegistry.
> +
> + Smalltalk forgetClass: newClass logged: false.
> + newClass superclass removeSubclass: newClass.
> + newClass setName: #WeakRegistry.
> + oldClass becomeForward: newClass.
> + ] forkAt: Processor highestPriority.
> + '.
> + !
>
>
>
More information about the Squeak-dev
mailing list
|