12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- // YAML error class. http://stackoverflow.com/questions/8458984
- //
- 'use strict';
- function YAMLException(reason, mark) {
- // Super constructor
- Error.call(this);
- // Include stack trace in error object
- if (Error.captureStackTrace) {
- // Chrome and NodeJS
- Error.captureStackTrace(this, this.constructor);
- } else {
- // FF, IE 10+ and Safari 6+. Fallback for others
- this.stack = (new Error()).stack || '';
- }
- this.name = 'YAMLException';
- this.reason = reason;
- this.mark = mark;
- this.message = (this.reason || '(unknown reason)') + (this.mark ? ' ' + this.mark.toString() : '');
- }
- // Inherit from Error
- YAMLException.prototype = Object.create(Error.prototype);
- YAMLException.prototype.constructor = YAMLException;
- YAMLException.prototype.toString = function toString(compact) {
- var result = this.name + ': ';
- result += this.reason || '(unknown reason)';
- if (!compact && this.mark) {
- result += ' ' + this.mark.toString();
- }
- return result;
- };
- module.exports = YAMLException;
|