diff --git a/std/assembly/error.ts b/std/assembly/error.ts index f6e2f574..4e40a15f 100644 --- a/std/assembly/error.ts +++ b/std/assembly/error.ts @@ -1,12 +1,31 @@ export class Error { + name: string = "Error"; message: string; stack: string = ""; // TODO constructor(message: string = "") { this.message = message; } + + toString(): string { + var message = this.message; + return message.length + ? this.name + ": " + message + : this.name; + } } -export class RangeError extends Error {} -export class TypeError extends Error {} +export class RangeError extends Error { + constructor(message: string = "") { + super(message); + this.name = "RangeError"; + } +} + +export class TypeError extends Error { + constructor(message: string = "") { + super(message); + this.name = "TypeError"; + } +}