'use strict'; const descriptor = { value: 'SqliteError', writable: true, enumerable: false, configurable: true }; function SqliteError(message, code, rawCode) { if (new.target !== SqliteError) { return new SqliteError(message, code); } if (typeof code !== 'string') { throw new TypeError('Expected second argument to be a string'); } Error.call(this, message); descriptor.value = '' + message; Object.defineProperty(this, 'message', descriptor); Error.captureStackTrace(this, SqliteError); this.code = code; this.rawCode = rawCode } Object.setPrototypeOf(SqliteError, Error); Object.setPrototypeOf(SqliteError.prototype, Error.prototype); Object.defineProperty(SqliteError.prototype, 'name', descriptor); module.exports = SqliteError;