mirror of
https://github.com/status-im/web3.js.git
synced 2025-02-24 12:08:22 +00:00
* Remove extraneous whitespace. * Fix dynamicOffset calculation when encoding params. Dynamic types should contribute only one word, not their staticPartLength. * Fix staticPartLength calculation for multidimensional arrays. Previously it was accounting for only one of the dimensions. * Define default behavior for SolidityType.staticPartLength. The default behavior was defined redundantly for every type.
33 lines
710 B
JavaScript
33 lines
710 B
JavaScript
var f = require('./formatters');
|
|
var SolidityType = require('./type');
|
|
|
|
/**
|
|
* SolidityTypeUInt is a prootype that represents uint type
|
|
* It matches:
|
|
* uint
|
|
* uint[]
|
|
* uint[4]
|
|
* uint[][]
|
|
* uint[3][]
|
|
* uint[][6][], ...
|
|
* uint32
|
|
* uint64[]
|
|
* uint8[4]
|
|
* uint256[][]
|
|
* uint[3][]
|
|
* uint64[][6][], ...
|
|
*/
|
|
var SolidityTypeUInt = function () {
|
|
this._inputFormatter = f.formatInputInt;
|
|
this._outputFormatter = f.formatOutputUInt;
|
|
};
|
|
|
|
SolidityTypeUInt.prototype = new SolidityType({});
|
|
SolidityTypeUInt.prototype.constructor = SolidityTypeUInt;
|
|
|
|
SolidityTypeUInt.prototype.isType = function (name) {
|
|
return !!name.match(/^uint([0-9]*)?(\[([0-9]*)\])*$/);
|
|
};
|
|
|
|
module.exports = SolidityTypeUInt;
|