move fullstorage changes logic to caller

pull/1/head
Iuri Matias 6 years ago committed by yann300
parent 2bc2af9ed0
commit 368f1c5499
  1. 41
      src/app/debugger/debuggerUI/VmDebugger.js
  2. 56
      src/app/debugger/debuggerUI/vmDebugger/FullStoragesChanges.js

@ -38,6 +38,7 @@ function VmDebugger (_parentUI, _traceManager, _codeManager, _solidityProxy, _ca
let _parent = _parentUI.debugger
var self = this
this.view
this.storageResolver = null
this.asmCode = new CodeListView()
_codeManager.event.register('changed', this.asmCode.changed.bind(this.asmCode))
@ -208,6 +209,44 @@ function VmDebugger (_parentUI, _traceManager, _codeManager, _solidityProxy, _ca
/* Return values - */
this.fullStoragesChangesPanel = new FullStoragesChangesPanel(_parentUI, _traceManager)
this.addresses = []
_parentUI.debugger.event.register('newTraceLoaded', this, function (length) {
self.panels = []
_traceManager.getAddresses(function (error, addresses) {
if (!error) {
self.addresses = addresses
self.fullStoragesChangesPanel.update({})
}
})
_traceManager.getLength(function (error, length) {
if (!error) {
self.traceLength = length
}
})
})
_parentUI.debugger.event.register('indexChanged', this, function (index) {
if (index < 0) return
if (_parent.currentStepIndex !== index) return
if (!self.storageResolver) return
if (index === self.traceLength - 1) {
var storageJSON = {}
for (var k in self.addresses) {
var address = self.addresses[k]
var storageViewer = new StorageViewer({ stepIndex: _parent.currentStepIndex, tx: _parent.tx, address: address }, self.storageResolver, _traceManager)
storageViewer.storageRange(function (error, result) {
if (!error) {
storageJSON[address] = result
self.fullStoragesChangesPanel.update(storageJSON)
}
})
}
} else {
self.fullStoragesChangesPanel.update({})
}
})
_parent.event.register('newTraceLoaded', this, function () {
if (!self.view) return
@ -215,7 +254,7 @@ function VmDebugger (_parentUI, _traceManager, _codeManager, _solidityProxy, _ca
// self.solidityState.storageResolver = self.storageResolver
self.debuggerSolidityState.storageResolver = self.storageResolver
self.debuggerSolidityLocals.storageResolver = self.storageResolver
self.fullStoragesChangesPanel.storageResolver = self.storageResolver
// self.fullStoragesChangesPanel.storageResolver = self.storageResolver
self.asmCode.basicPanel.show()
self.stackPanel.basicPanel.show()
self.storagePanel.basicPanel.show()

@ -5,15 +5,12 @@ var StorageViewer = remixDebug.storage.StorageViewer
var yo = require('yo-yo')
function FullStoragesChanges (_parent, _traceManager) {
this.storageResolver = null
this.parent = _parent
this.debugger = _parent.debugger
this.traceManager = _traceManager
this.addresses = []
this.view
this.traceLength
this.basicPanel = new DropdownPanel('Full Storages Changes', {json: true})
this.init()
}
FullStoragesChanges.prototype.update = function (storageData) {
this.basicPanel.update(storageData)
}
FullStoragesChanges.prototype.render = function () {
@ -24,49 +21,4 @@ FullStoragesChanges.prototype.render = function () {
return view
}
FullStoragesChanges.prototype.init = function () {
var self = this
this.debugger.event.register('newTraceLoaded', this, function (length) {
self.panels = []
self.traceManager.getAddresses(function (error, addresses) {
if (!error) {
self.addresses = addresses
self.basicPanel.update({})
}
})
self.traceManager.getLength(function (error, length) {
if (!error) {
self.traceLength = length
}
})
})
this.debugger.event.register('indexChanged', this, function (index) {
if (index < 0) return
if (self.parent.currentStepIndex !== index) return
if (!self.storageResolver) return
if (index === self.traceLength - 1) {
var storageJSON = {}
for (var k in self.addresses) {
var address = self.addresses[k]
var storageViewer = new StorageViewer({
stepIndex: self.parent.currentStepIndex,
tx: self.parent.tx,
address: address
}, self.storageResolver, self.traceManager)
storageViewer.storageRange(function (error, result) {
if (!error) {
storageJSON[address] = result
self.basicPanel.update(storageJSON)
}
})
}
} else {
self.basicPanel.update({})
}
})
}
module.exports = FullStoragesChanges

Loading…
Cancel
Save