Repository URL to install this package:
|
Version:
0.6.0 ▾
|
| .. |
| lib |
| .travis.yml |
| license |
| package.json |
| readme.md |

A library to make errors.
Makes an Error constructor function with the signature below. All arguments are
optional, and if the first argument is not a String, it will be assumed to be
data:
function(message, data)
You'll typically do something like:
var makeError = require('makeerror') var UnknownFileTypeError = makeError( 'UnknownFileTypeError', 'The specified type is not known.' ) var er = UnknownFileTypeError()
er will have a prototype chain that ensures:
er instanceof UnknownFileTypeError er instanceof Error
There is support for simple string substitutions like:
var makeError = require('makeerror') var UnknownFileTypeError = makeError( 'UnknownFileTypeError', 'The specified type "{type}" is not known.' ) var er = UnknownFileTypeError({ type: 'bmp' })
Now er.message or er.toString() will return 'The specified type "bmp" is not known.'.
You can create simple hierarchies as well using the prototype chain:
var makeError = require('makeerror') var ParentError = makeError('ParentError') var ChildError = makeError( 'ChildError', 'The child error.', { proto: ParentError() } ) var er = ChildError()
er will have a prototype chain that ensures:
er instanceof ChildError er instanceof ParentError er instanceof Error