refactor: expose int64 and big numbers as modules.

This commit is contained in:
Christopher Jeffrey 2017-06-22 03:59:49 -07:00
parent d0482520d9
commit 33ffb780b3
No known key found for this signature in database
GPG Key ID: 8962AB9DE6666BBD
23 changed files with 46 additions and 22 deletions

View File

@ -8,7 +8,7 @@
'use strict';
var assert = require('assert');
var BN = require('bn.js');
var BN = require('../crypto/bn');
var consensus = require('../protocol/consensus');
var util = require('../utils/util');
var crypto = require('../crypto/crypto');

9
lib/crypto/bn.js Normal file
View File

@ -0,0 +1,9 @@
/*!
* bn.js - big numbers for bcoin
* Copyright (c) 2017, Christopher Jeffrey (MIT License).
* https://github.com/bcoin-org/bcoin
*/
'use strict';
module.exports = require('bn.js');

View File

@ -11,8 +11,8 @@ var assert = require('assert');
var elliptic = require('elliptic');
var secp256k1 = elliptic.ec('secp256k1');
var Signature = require('elliptic/lib/elliptic/ec/signature');
var BN = require('./bn');
var curve = secp256k1.curve;
var BN = require('bn.js');
/**
* @exports crypto/ec-elliptic

View File

@ -299,6 +299,13 @@ exports.Poly1305 = exports.chachapoly.Poly1305;
exports.AEAD = exports.chachapoly.AEAD;
/**
* BN
* @see https://github.com/indutny/bn.js
*/
exports.BN = require('./bn');
/**
* pk module
* @see module:crypto/pk

View File

@ -12,8 +12,8 @@
*/
var assert = require('assert');
var BN = require('bn.js');
var elliptic = require('elliptic');
var BN = require('./bn');
var ASN1 = require('../utils/asn1');
var backend = require('./backend');
var rsa, ecdsa;

View File

@ -6,10 +6,10 @@
'use strict';
var BN = require('bn.js');
var elliptic = require('elliptic');
var Signature = require('elliptic/lib/elliptic/ec/signature');
var hmacDRBG = require('hmac-drbg');
var BN = require('./bn');
var sha256 = require('./backend').sha256;
var secp256k1 = elliptic.ec('secp256k1');
var curve = secp256k1.curve;

View File

@ -130,10 +130,6 @@ function Environment() {
this.env = Environment;
this.require = lazy(require, this);
// BN
this.require('bn', 'bn.js');
this.require('elliptic', 'elliptic');
// Horrible BIP
this.require('bip70', './bip70');
@ -154,6 +150,7 @@ function Environment() {
// Crypto
this.require('crypto', './crypto');
this.require('bn', './crypto/bn');
this.require('ec', './crypto/ec');
this.require('pk', './crypto/pk');
this.require('schnorr', './crypto/schnorr');
@ -239,6 +236,7 @@ function Environment() {
this.require('bloom', './utils/bloom');
this.require('co', './utils/co');
this.require('encoding', './utils/encoding');
this.require('int64', './utils/int64');
this.require('lock', './utils/lock');
this.require('reader', './utils/reader');
this.require('staticwriter', './utils/staticwriter');

View File

@ -8,7 +8,7 @@
var assert = require('assert');
var consensus = require('../protocol/consensus');
var BN = require('bn.js');
var BN = require('../crypto/bn');
/**
* @exports mining/common

View File

@ -8,9 +8,9 @@
'use strict';
var assert = require('assert');
var BN = require('bn.js');
var util = require('../utils/util');
var crypto = require('../crypto/crypto');
var BN = require('../crypto/bn');
var StaticWriter = require('../utils/staticwriter');
var Address = require('../primitives/address');
var TX = require('../primitives/tx');

View File

@ -12,7 +12,7 @@
*/
var assert = require('assert');
var BN = require('bn.js');
var BN = require('../crypto/bn');
/**
* One bitcoin in satoshis.

View File

@ -11,7 +11,7 @@
* @module protocol/networks
*/
var BN = require('bn.js');
var BN = require('../crypto/bn');
var network = exports;
var main, testnet, regtest, segnet4, simnet;

View File

@ -12,7 +12,7 @@
*/
var assert = require('assert');
var BN = require('bn.js');
var BN = require('../crypto/bn');
var util = require('../utils/util');
var ec = require('../crypto/ec');

View File

@ -8,7 +8,7 @@
'use strict';
var assert = require('assert');
var BN = require('bn.js');
var BN = require('../crypto/bn');
var util = require('../utils/util');
var common = require('./common');
var BufferReader = require('../utils/reader');

View File

@ -8,7 +8,7 @@
'use strict';
var assert = require('assert');
var BN = require('bn.js');
var BN = require('../crypto/bn');
var consensus = require('../protocol/consensus');
var policy = require('../protocol/policy');
var util = require('../utils/util');

View File

@ -8,7 +8,7 @@
'use strict';
var assert = require('assert');
var BN = require('bn.js');
var BN = require('../crypto/bn');
var util = require('../utils/util');
var Script = require('./script');
var common = require('./common');

View File

@ -7,7 +7,7 @@
'use strict';
var assert = require('assert');
var Int64 = require('n64');
var Int64 = require('./int64');
var crypto = require('../crypto/crypto');
var siphash24 = require('../crypto/siphash');
var SCRATCH = Buffer.allocUnsafe(64);

View File

@ -15,6 +15,7 @@ exports.co = require('./co');
exports.encoding = require('./encoding');
exports.fs = require('./fs');
exports.Heap = require('./heap');
exports.Int64 = require('./int64');
exports.IP = require('./ip');
exports.lazy = require('./lazy');
exports.Lock = require('./lock');

9
lib/utils/int64.js Normal file
View File

@ -0,0 +1,9 @@
/*!
* int64.js - int64s for bcoin
* Copyright (c) 2017, Christopher Jeffrey (MIT License).
* https://github.com/bcoin-org/bcoin
*/
'use strict';
module.exports = require('n64');

View File

@ -6,7 +6,7 @@ var BufferReader = require('../lib/utils/reader');
var crypto = require('../lib/crypto/crypto');
var util = require('../lib/utils/util');
var LDB = require('../lib/db/ldb');
var BN = require('bn.js');
var BN = require('../lib/crypto/bn');
var DUMMY = Buffer.from([0]);
var file = process.argv[2];
var db, batch;

View File

@ -1,6 +1,6 @@
'use strict';
var BN = require('bn.js');
var BN = require('../lib/crypto/bn');
var util = require('../lib/utils/util');
var consensus = require('../lib/protocol/consensus');
var encoding = require('../lib/utils/encoding');

View File

@ -1,7 +1,7 @@
'use strict';
var assert = require('assert');
var BN = require('bn.js');
var BN = require('../lib/crypto/bn');
var consensus = require('../lib/protocol/consensus');
var encoding = require('../lib/utils/encoding');
var co = require('../lib/utils/co');

View File

@ -1,7 +1,7 @@
'use strict';
var assert = require('assert');
var BN = require('bn.js');
var BN = require('../lib/crypto/bn');
var consensus = require('../lib/protocol/consensus');
var co = require('../lib/utils/co');
var Coin = require('../lib/primitives/coin');

View File

@ -1,7 +1,7 @@
'use strict';
var assert = require('assert');
var BN = require('bn.js');
var BN = require('../lib/crypto/bn');
var ec = require('../lib/crypto/ec');
var base58 = require('../lib/utils/base58');
var encoding = require('../lib/utils/encoding');