aboutsummaryrefslogtreecommitdiffstats
path: root/packages/utils/src/abi_encoder/abstract_data_types/data_type.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/utils/src/abi_encoder/abstract_data_types/data_type.ts')
-rw-r--r--packages/utils/src/abi_encoder/abstract_data_types/data_type.ts12
1 files changed, 6 insertions, 6 deletions
diff --git a/packages/utils/src/abi_encoder/abstract_data_types/data_type.ts b/packages/utils/src/abi_encoder/abstract_data_types/data_type.ts
index ab7df6ecc..61d3ac3a9 100644
--- a/packages/utils/src/abi_encoder/abstract_data_types/data_type.ts
+++ b/packages/utils/src/abi_encoder/abstract_data_types/data_type.ts
@@ -25,9 +25,9 @@ export abstract class DataType {
}
public encode(value: any, rules?: EncodingRules, selector?: string): string {
- const rules_ = rules ? rules : Constants.DEFAULT_ENCODING_RULES;
+ const rules_ = _.isUndefined(rules) ? Constants.DEFAULT_ENCODING_RULES : rules;
const calldata = new Calldata(rules_);
- if (selector) {
+ if (!_.isUndefined(selector)) {
calldata.setSelector(selector);
}
const block = this.generateCalldataBlock(value);
@@ -37,14 +37,14 @@ export abstract class DataType {
}
public decode(calldata: string, rules?: DecodingRules, selector?: string): any {
- if (selector && !calldata.startsWith(selector)) {
+ if (!_.isUndefined(selector) && !calldata.startsWith(selector)) {
throw new Error(
- `Tried to decode calldata, but it was missing the function selector. Expected '${selector}'.`,
+ `Tried to decode calldata, but it was missing the function selector. Expected prefix '${selector}'. Got '${calldata}'.`,
);
}
- const hasSelector = selector ? true : false;
+ const hasSelector = !_.isUndefined(selector);
const rawCalldata = new RawCalldata(calldata, hasSelector);
- const rules_ = rules ? rules : Constants.DEFAULT_DECODING_RULES;
+ const rules_ = _.isUndefined(rules) ? Constants.DEFAULT_DECODING_RULES : rules;
const value = this.generateValue(rawCalldata, rules_);
return value;
}