[Pkg] Monticello Public: PackageInfo-Base-mtf.48.mcz
squeaksource-noreply at iam.unibe.ch
squeaksource-noreply at iam.unibe.ch
Tue Jun 10 04:11:03 UTC 2008
A new version of PackageInfo-Base was added to project Monticello Public:
http://www.squeaksource.com/mc/PackageInfo-Base-mtf.48.mcz
==================== Summary ====================
Name: PackageInfo-Base-mtf.48
Author: mtf
Time: 9 June 2008, 9:09:26 pm
UUID: 5abb87ec-9a92-4d96-bebf-0c881b8c8b45
Ancestors: PackageInfo-Base-kph.47
no more underscore assignments
=============== Diff against PackageInfo-Base-kph.47 ===============
Item was changed:
----- Method: PackageList>>packageSelection: (in category 'morphic') -----
packageSelection: aNumber
+ selectedPackage := self packages at: aNumber ifAbsent: [].
- selectedPackage _ self packages at: aNumber ifAbsent: [].
self changed: #packageSelection!
Item was changed:
----- Method: PackageInfo>>preamble: (in category 'preamble/postscript') -----
+ preamble:aString
- preamble: aString
+ preamble := StringHolder new contents: aString!
- preamble _ StringHolder new contents: aString!
Item was changed:
----- Method: PackageInfo>>preambleOfRemoval: (in category 'preamble/postscript') -----
preambleOfRemoval: aString
+ preambleOfRemoval := StringHolder new contents: aString
- preambleOfRemoval _ StringHolder new contents: aString
!
Item was changed:
----- Method: PackageList>>addPackage (in category 'actions') -----
addPackage
| packageName |
+ packageName := FillInTheBlank request: 'Package name:'.
- packageName _ FillInTheBlank request: 'Package name:'.
packageName isEmpty ifFalse:
+ [selectedPackage := self packageOrganizer registerPackageNamed: packageName.
- [selectedPackage _ self packageOrganizer registerPackageNamed: packageName.
self changed: #packageSelection]!
Item was changed:
----- Method: PackageInfo>>preambleOfRemoval (in category 'preamble/postscript') -----
preambleOfRemoval
+ ^ preambleOfRemoval ifNil: [preambleOfRemoval := StringHolder new contents: '"below, add code to prepare for the unloading of this package"']!
- ^ preambleOfRemoval ifNil: [preambleOfRemoval _ StringHolder new contents: '"below, add code to prepare for the unloading of this package"']!
Item was changed:
----- Method: PackageInfo>>postscriptOfRemoval (in category 'preamble/postscript') -----
postscriptOfRemoval
+ ^ postscriptOfRemoval ifNil: [postscriptOfRemoval := StringHolder new contents: '"below, add code to clean up after the unloading of this package"']!
- ^ postscriptOfRemoval ifNil: [postscriptOfRemoval _ StringHolder new contents: '"below, add code to clean up after the unloading of this package"']!
Item was added:
+ ----- Method: PackageOrganizer>>packages (in category 'accessing') -----
+ packages
+ ^ packages values!
Item was changed:
----- Method: PackageList>>packages (in category 'as yet unclassified') -----
packages
+ ^ packages ifNil: [packages := self packageOrganizer packageInfos asSortedCollection:
- ^ packages ifNil: [packages _ self packageOrganizer packageInfos asSortedCollection:
[:a :b | a packageName <= b packageName]]!
Item was changed:
----- Method: PackageInfo>>changeRecordForOverriddenMethod: (in category 'testing') -----
changeRecordForOverriddenMethod: aMethodReference
| position prevPos prevFileIndex thePreamble tokens sourceFilesCopy stamp method file methodCategory |
+ method := aMethodReference actualClass compiledMethodAt: aMethodReference methodSymbol.
+ position := method filePosition.
+ sourceFilesCopy := SourceFiles collect:
- method _ aMethodReference actualClass compiledMethodAt: aMethodReference methodSymbol.
- position _ method filePosition.
- sourceFilesCopy _ SourceFiles collect:
[:x | x isNil ifTrue: [ nil ]
ifFalse: [x readOnlyCopy]].
[method fileIndex == 0 ifTrue: [^ nil].
+ file := sourceFilesCopy at: method fileIndex.
- file _ sourceFilesCopy at: method fileIndex.
[position notNil & file notNil]
whileTrue:
[file position: (0 max: position-150). "Skip back to before the preamble"
[file position < (position-1)] "then pick it up from the front"
+ whileTrue: [thePreamble := file nextChunk].
- whileTrue: [thePreamble _ file nextChunk].
"thePreamble is likely a linked method preamble, if we're in
a changes file (not the sources file). Try to parse it
for prior source position and file index"
+ prevPos := nil.
+ stamp := ''.
- prevPos _ nil.
- stamp _ ''.
(thePreamble findString: 'methodsFor:' startingAt: 1) > 0
+ ifTrue: [tokens := Scanner new scanTokens: thePreamble]
+ ifFalse: [tokens := Array new "ie cant be back ref"].
- ifTrue: [tokens _ Scanner new scanTokens: thePreamble]
- ifFalse: [tokens _ Array new "ie cant be back ref"].
((tokens size between: 7 and: 8)
and: [(tokens at: tokens size-5) = #methodsFor:])
ifTrue:
[(tokens at: tokens size-3) = #stamp:
ifTrue: ["New format gives change stamp and unified prior pointer"
+ stamp := tokens at: tokens size-2.
+ prevPos := tokens last.
+ prevFileIndex := sourceFilesCopy fileIndexFromSourcePointer: prevPos.
+ prevPos := sourceFilesCopy filePositionFromSourcePointer: prevPos]
- stamp _ tokens at: tokens size-2.
- prevPos _ tokens last.
- prevFileIndex _ sourceFilesCopy fileIndexFromSourcePointer: prevPos.
- prevPos _ sourceFilesCopy filePositionFromSourcePointer: prevPos]
ifFalse: ["Old format gives no stamp; prior pointer in two parts"
+ prevPos := tokens at: tokens size-2.
+ prevFileIndex := tokens last].
+ (prevPos = 0 or: [prevFileIndex = 0]) ifTrue: [prevPos := nil]].
- prevPos _ tokens at: tokens size-2.
- prevFileIndex _ tokens last].
- (prevPos = 0 or: [prevFileIndex = 0]) ifTrue: [prevPos _ nil]].
((tokens size between: 5 and: 6)
and: [(tokens at: tokens size-3) = #methodsFor:])
ifTrue:
[(tokens at: tokens size-1) = #stamp:
ifTrue: ["New format gives change stamp and unified prior pointer"
+ stamp := tokens at: tokens size]].
+ methodCategory := tokens after: #methodsFor: ifAbsent: ['as yet unclassifed'].
- stamp _ tokens at: tokens size]].
- methodCategory _ tokens after: #methodsFor: ifAbsent: ['as yet unclassifed'].
(self includesMethodCategory: methodCategory ofClass: aMethodReference actualClass) ifTrue:
+ [methodCategory = (Smalltalk at: #Categorizer ifAbsent: [Smalltalk at: #ClassOrganizer]) default ifTrue: [methodCategory := methodCategory, ' '].
- [methodCategory = (Smalltalk at: #Categorizer ifAbsent: [Smalltalk at: #ClassOrganizer]) default ifTrue: [methodCategory _ methodCategory, ' '].
^ ChangeRecord new file: file position: position type: #method
class: aMethodReference classSymbol category: methodCategory meta: aMethodReference classIsMeta stamp: stamp].
+ position := prevPos.
- position _ prevPos.
prevPos notNil ifTrue:
+ [file := sourceFilesCopy at: prevFileIndex]].
- [file _ sourceFilesCopy at: prevFileIndex]].
^ nil]
ensure: [sourceFilesCopy do: [:x | x notNil ifTrue: [x close]]]
!
Item was changed:
----- Method: PackageInfo>>postscriptOfRemoval: (in category 'preamble/postscript') -----
postscriptOfRemoval: aString
+ postscriptOfRemoval := StringHolder new contents: aString
- postscriptOfRemoval _ StringHolder new contents: aString
!
Item was changed:
----- Method: PackageList>>update: (in category 'actions') -----
update: aSymbol
aSymbol = #packages ifTrue:
+ [packages := nil.
- [packages _ nil.
self changed: #packageList; changed: #packageSelection]!
Item was changed:
----- Method: PackageList>>buildWindow (in category 'morphic') -----
buildWindow
| window |
+ window := SystemWindow labelled: self label.
- window _ SystemWindow labelled: self label.
window model: self.
window addMorph: self buildList fullFrame: (LayoutFrame fractions: (0 at 0 corner: 1 at 1)).
^ window!
Item was changed:
----- Method: PackageInfo>>preamble (in category 'preamble/postscript') -----
preamble
+ ^ preamble ifNil: [preamble := StringHolder new contents: '"below, add code to be run before the loading of this package"'].
- ^ preamble ifNil: [preamble _ StringHolder new contents: '"below, add code to be run before the loading of this package"'].
!
Item was changed:
----- Method: PackageInfo>>postscript (in category 'preamble/postscript') -----
postscript
+ ^ postscript ifNil: [postscript := StringHolder new contents: '"below, add code to be run after the loading of this package"'].!
- ^ postscript ifNil: [postscript _ StringHolder new contents: '"below, add code to be run after the loading of this package"'].!
Item was changed:
----- Method: PackageInfo>>postscript: (in category 'preamble/postscript') -----
postscript: aString
+ postscript := StringHolder new contents: aString!
- postscript _ StringHolder new contents: aString!
More information about the Packages
mailing list