ethers.js/packages/abi/src.ts/coders/boolean.ts

24 lines
491 B
TypeScript
Raw Permalink Normal View History

2019-05-14 18:25:46 -04:00
"use strict";
import { Coder, Reader, Writer } from "./abstract-coder";
export class BooleanCoder extends Coder {
constructor(localName: string) {
super("bool", "bool", localName, false);
}
defaultValue(): boolean {
return false;
}
2019-05-14 18:25:46 -04:00
encode(writer: Writer, value: boolean): number {
return writer.writeValue(value ? 1: 0);
}
decode(reader: Reader): any {
return reader.coerce(this.type, !reader.readValue().isZero());
}
}