Eliot Miranda uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-eem.1385.mcz ==================== Summary ==================== Name: Morphic-eem.1385 Author: eem Time: 2 January 2018, 5:15:20.469423 pm UUID: 0664f735-9f8a-41f4-b1dd-70a22da13503 Ancestors: Morphic-tpr.1384 Minor refactoring for CompiledBlock. Move CompiledMethod>>explorerContents up to CompiledCode. =============== Diff against Morphic-tpr.1384 =============== Item was added: + ----- Method: CompiledCode>>explorerContents (in category '*Morphic-Explorer') ----- + explorerContents + "(CompiledCode compiledMethodAt: #explorerContents) explore" + + ^Array streamContents: + [:s| | tokens | + tokens := Scanner new scanTokens: (self headerDescription readStream skipTo: $"; upTo: $"). + s nextPut: (ObjectExplorerWrapper + with: ((0 to: tokens size by: 2) collect: + [:i| i = 0 ifTrue: [self header] ifFalse: [{tokens at: i - 1. tokens at: i}]]) + name: 'header' + model: self). + (1 to: self numLiterals) do: + [:key| + s nextPut: (ObjectExplorerWrapper + with: (self literalAt: key) + name: ('literal', key printString contractTo: 32) + model: self)]. + self isQuick + ifTrue: [s nextPut: (ObjectExplorerWrapper + with: self symbolic + name: #symbolic + model: self)] + ifFalse: + [self symbolicLinesDo: + [:pc :line| + pc <= 1 + ifTrue: + [s nextPut: (ObjectExplorerWrapper + with: line + name: 'pragma' + model: self)] + ifFalse: + [s nextPut: (ObjectExplorerWrapper + with: line + name: pc printString + model: self)]]]. + "should be self numLiterals + 1 * Smalltalk wordSize + 1" + self endPC + 1 + to: self basicSize + do: [:key| + s nextPut: (ObjectExplorerWrapper + with: (self basicAt: key) + name: key printString + model: self)]]! Item was removed: - ----- Method: CompiledMethod>>explorerContents (in category '*Morphic-Explorer') ----- - explorerContents - "(CompiledMethod compiledMethodAt: #explorerContents) explore" - - ^Array streamContents: - [:s| | tokens | - tokens := Scanner new scanTokens: (self headerDescription readStream skipTo: $"; upTo: $"). - s nextPut: (ObjectExplorerWrapper - with: ((0 to: tokens size by: 2) collect: - [:i| i = 0 ifTrue: [self header] ifFalse: [{tokens at: i - 1. tokens at: i}]]) - name: 'header' - model: self). - (1 to: self numLiterals) do: - [:key| - s nextPut: (ObjectExplorerWrapper - with: (self literalAt: key) - name: ('literal', key printString contractTo: 32) - model: self)]. - self isQuick - ifTrue: [s nextPut: (ObjectExplorerWrapper - with: self symbolic - name: #symbolic - model: self)] - ifFalse: - [self symbolicLinesDo: - [:pc :line| - pc <= 1 - ifTrue: - [s nextPut: (ObjectExplorerWrapper - with: line - name: 'pragma' - model: self)] - ifFalse: - [s nextPut: (ObjectExplorerWrapper - with: line - name: pc printString - model: self)]]]. - "should be self numLiterals + 1 * Smalltalk wordSize + 1" - self endPC + 1 - to: self basicSize - do: [:key| - s nextPut: (ObjectExplorerWrapper - with: (self basicAt: key) - name: key printString - model: self)]]! |
Free forum by Nabble | Edit this page |