add raw methods to address object.

This commit is contained in:
Christopher Jeffrey 2016-06-30 22:57:06 -07:00
parent a09bd94052
commit 0a3e61b3e6
No known key found for this signature in database
GPG Key ID: 8962AB9DE6666BBD

View File

@ -83,13 +83,13 @@ Address.prototype.getHash = function getHash(enc) {
};
/**
* Compile the address object to a base58 address.
* Compile the address object to its raw serialization.
* @param {{NetworkType|Network)?} network
* @returns {Base58Address}
* @returns {Buffer}
* @throws Error on bad hash/prefix.
*/
Address.prototype.toBase58 = function toBase58(network) {
Address.prototype.toRaw = function toRaw(network) {
var p = new BufferWriter();
var prefix;
@ -109,7 +109,18 @@ Address.prototype.toBase58 = function toBase58(network) {
p.writeBytes(this.hash);
p.writeChecksum();
return utils.toBase58(p.render());
return p.render();
};
/**
* Compile the address object to a base58 address.
* @param {{NetworkType|Network)?} network
* @returns {Base58Address}
* @throws Error on bad hash/prefix.
*/
Address.prototype.toBase58 = function toBase58(network) {
return utils.toBase58(this.toRaw(network));
};
/**
@ -148,18 +159,15 @@ Address.prototype.inspect = function inspect() {
};
/**
* Inject properties from base58 address.
* Inject properties from serialized data.
* @private
* @param {Base58Address} data
* @param {Buffer} data
* @throws Parse error
*/
Address.prototype.fromBase58 = function fromBase58(data) {
Address.prototype.fromRaw = function fromRaw(data) {
var i, p, prefix, network, type, version, hash;
if (typeof data === 'string')
data = utils.fromBase58(data);
assert(Buffer.isBuffer(data));
p = new BufferReader(data, true);
@ -188,6 +196,28 @@ Address.prototype.fromBase58 = function fromBase58(data) {
return this.fromHash(hash, type, version, network.type);
};
/**
* Create an address object from a serialized address.
* @param {Buffer} data
* @returns {Address}
* @throws Parse error.
*/
Address.fromRaw = function fromRaw(data) {
return new Address().fromRaw(data);
};
/**
* Inject properties from base58 address.
* @private
* @param {Base58Address} data
* @throws Parse error
*/
Address.prototype.fromBase58 = function fromBase58(data) {
return this.fromRaw(utils.fromBase58(data));
};
/**
* Create an address object from a base58 address.
* @param {Base58Address} address