1234567891011121314 |
- // https://stackoverflow.com/a/46971044/970769
- // "Breaking changes in Typescript 2.1"
- // "Extending built-ins like Error, Array, and Map may no longer work."
- // "As a recommendation, you can manually adjust the prototype immediately after any super(...) calls."
- // https://github.com/Microsoft/TypeScript-wiki/blob/main/Breaking-Changes.md#extending-built-ins-like-error-array-and-map-may-no-longer-work
- export default class ParseError extends Error {
- constructor(code) {
- super(code)
- // Set the prototype explicitly.
- // Any subclass of FooError will have to manually set the prototype as well.
- Object.setPrototypeOf(this, ParseError.prototype)
- this.name = this.constructor.name
- }
- }
|