# HG changeset patch # User Claus Gittinger # Date 972322810 -7200 # Node ID 77abca16cfa381c9a92f3a674710aea4c99b688f # Parent 1c2b4909ba3a3651879c8dc8ed910bdd0f51e4d2 initial checkin diff -r 1c2b4909ba3a -r 77abca16cfa3 SnapShotImage.st --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/SnapShotImage.st Mon Oct 23 19:40:10 2000 +0200 @@ -0,0 +1,58 @@ +"{ Package: 'cg:private' }" + +Object subclass:#SnapShotImage + instanceVariableNames:'memory globals' + classVariableNames:'' + poolDictionaries:'' + category:'System-Support' +! + + +!SnapShotImage class methodsFor:'instance creation'! + +for:aFilename + ^ self new for:aFilename +! ! + +!SnapShotImage methodsFor:'private'! + +fetchGlobals + memory globalEntries do:[:eachEntry | + |pNameSym pVal nameSym value| + + pNameSym := eachEntry key. + pVal := eachEntry value. + + nameSym := memory fetchObjectAt:pNameSym. + value := memory fetchObjectAt:pVal. + self halt. + ]. +! + +for:aFilename + memory := SnapShotImageMemory for:aFilename. + memory readHeader +! ! + +!SnapShotImage methodsFor:'smalltalk protocol'! + +allClassesDo:aBlock + self keysAndValuesDo:[:key :val | + val isBehavior ifTrue:[ + aBlock value:val + ] + ]. +! + +keysAndValuesDo:aTwoArgBlock + globals isNil ifTrue:[ + self fetchGlobals + ]. + globals keysAndValuesDo:aTwoArgBlock +! ! + +!SnapShotImage class methodsFor:'documentation'! + +version + ^ '$Header$' +! !