24 lines
548 B
JavaScript

/**
* Represents an error that is thrown when the calling a pure virtual method.
* @class
* @extends {Error}
*/
export class VirtualMethodNotImplementedError extends Error {
/** @constructor */
constructor() {
super('virtual method not implemented.');
}
};
/**
* Represents an error that is thrown when called a function with invalid arguments.
* @class
* @extends {Error}
*/
export class InvalidArgumentError extends Error {
/** @constructor */
constructor(name, reason) {
super(`argument ${name} is invalid: ${reason}.`);
}
};