refactor extractSourceLocation

refactor_remix_debug4
Iuri Matias 4 years ago
parent 5ae4763b8b
commit 7feb9edb3e
  1. 24
      libs/remix-debug/src/solidity-decoder/internalCallTree.js

@ -124,23 +124,15 @@ class InternalCallTree {
return functions return functions
} }
extractSourceLocation (step) { async extractSourceLocation (step) {
return new Promise((resolve, reject) => { try {
try { const address = this.traceManager.getCurrentCalledAddressAt(step)
const address = this.traceManager.getCurrentCalledAddressAt(step) const location = await this.sourceLocationTracker.getSourceLocationFromVMTraceIndex(address, step, this.solidityProxy.contracts)
try { return location
this.sourceLocationTracker.getSourceLocationFromVMTraceIndex(address, step, this.solidityProxy.contracts).then(resolve).catch((error) => { } catch (error) {
return reject('InternalCallTree - Cannot retrieve sourcelocation for step ' + step + ' ' + error) throw new Error('InternalCallTree - Cannot retrieve sourcelocation for step ' + step + ' ' + error)
}) }
} catch (error) {
return reject('InternalCallTree - Cannot retrieve address for step ' + step + ' ' + error)
}
} catch (error) {
return reject('InternalCallTree - Cannot retrieve address for step ' + step + ' ' + error)
}
})
} }
} }
async function buildTree (tree, step, scopeId, isExternalCall) { async function buildTree (tree, step, scopeId, isExternalCall) {

Loading…
Cancel
Save