From dfef33bc41221c3f0f38d7e1c3e4163455b98b79 Mon Sep 17 00:00:00 2001 From: Remco Bloemen Date: Fri, 9 Nov 2018 00:19:11 +0100 Subject: Added more comments --- packages/utils/src/configured_bignumber.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/utils/src/configured_bignumber.ts b/packages/utils/src/configured_bignumber.ts index 8e1491796..34b57d303 100644 --- a/packages/utils/src/configured_bignumber.ts +++ b/packages/utils/src/configured_bignumber.ts @@ -22,7 +22,12 @@ if (isNode) { const util = require('util'); // Set a custom util.inspect function + // HACK: We add a function to the BigNumber class by assigning to the + // prototype. The function name is a symbol provided by Node. (BigNumber.prototype as any)[util.inspect.custom] = function(): string { + // HACK: When executed, `this` will refer to the BigNumber instance. + // This is also why we need a function expression instead of an + // arrow function, as the latter does not have a `this`. // Return the readable string representation // tslint:disable-next-line: no-invalid-this return this.toString(); -- cgit v1.2.3