fixed PR issues
This commit is contained in:
parent
f646ab45f9
commit
530c4a3b1d
|
@ -133,39 +133,42 @@ SolidityCoder.prototype.encodeMultiWithOffset = function (types, solidityTypes,
|
|||
};
|
||||
|
||||
SolidityCoder.prototype.encodeWithOffset = function (type, solidityType, encoded, offset) {
|
||||
/* jshint maxcomplexity: 17 */
|
||||
/* jshint maxdepth: 5 */
|
||||
|
||||
var self = this;
|
||||
var encodingMode={dynamic:1,static:2,other:3};
|
||||
|
||||
|
||||
var mode=(solidityType.isDynamicArray(type)?encodingMode.dynamic:(solidityType.isStaticArray(type)?encodingMode.static:encodingMode.other));
|
||||
|
||||
if(mode!=encodingMode.other){
|
||||
if(mode !== encodingMode.other){
|
||||
var nestedName = solidityType.nestedName(type);
|
||||
var nestedStaticPartLength = solidityType.staticPartLength(nestedName);
|
||||
var result = (mode==encodingMode.dynamic?encoded[0]:"");
|
||||
|
||||
var result = (mode === encodingMode.dynamic ? encoded[0] : '');
|
||||
|
||||
if (solidityType.isDynamicArray(nestedName)) {
|
||||
var previousLength = (mode==encodingMode.dynamic?2:0);
|
||||
|
||||
var previousLength = (mode === encodingMode.dynamic ? 2 : 0);
|
||||
|
||||
for (var i = 0; i < encoded.length; i++) {
|
||||
// calculate length of previous item
|
||||
if(mode==encodingMode.dynamic){
|
||||
if(mode === encodingMode.dynamic){
|
||||
previousLength += +(encoded[i - 1])[0] || 0;
|
||||
}
|
||||
else if(mode==encodingMode.static){
|
||||
else if(mode === encodingMode.static){
|
||||
previousLength += +(encoded[i - 1] || [])[0] || 0;
|
||||
}
|
||||
result += f.formatInputInt(offset + i * nestedStaticPartLength + previousLength * 32).encode();
|
||||
}
|
||||
}
|
||||
|
||||
var len=(mode==encodingMode.dynamic?encoded.length-1:encoded.length);
|
||||
for (var i = 0; i < len; i++) {
|
||||
var len= (mode === encodingMode.dynamic ? encoded.length-1 : encoded.length);
|
||||
for (var c = 0; c < len; c++) {
|
||||
var additionalOffset = result / 2;
|
||||
if(mode==encodingMode.dynamic){
|
||||
result += self.encodeWithOffset(nestedName, solidityType, encoded[i + 1], offset + additionalOffset);
|
||||
if(mode === encodingMode.dynamic){
|
||||
result += self.encodeWithOffset(nestedName, solidityType, encoded[c + 1], offset + additionalOffset);
|
||||
}
|
||||
else if(mode==encodingMode.static){
|
||||
result += self.encodeWithOffset(nestedName, solidityType, encoded[i], offset + additionalOffset);
|
||||
else if(mode === encodingMode.static){
|
||||
result += self.encodeWithOffset(nestedName, solidityType, encoded[c], offset + additionalOffset);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
'use strict'
|
||||
|
||||
/*
|
||||
This file is part of web3.js.
|
||||
|
||||
|
@ -23,6 +21,9 @@
|
|||
* @date 2015
|
||||
*/
|
||||
|
||||
'use strict';
|
||||
|
||||
|
||||
var utils = require('../utils/utils');
|
||||
var config = require('../utils/config');
|
||||
var Iban = require('./iban');
|
||||
|
|
|
@ -40,7 +40,7 @@
|
|||
"build": "gulp",
|
||||
"watch": "gulp watch",
|
||||
"lint": "jshint *.js lib",
|
||||
"test": "mocha",
|
||||
"test": "mocha; jshint *.js lib",
|
||||
"test-coveralls": "istanbul cover _mocha -- -R spec && cat coverage/lcov.info | coveralls --verbose"
|
||||
},
|
||||
"repository": {
|
||||
|
|
Loading…
Reference in New Issue