fault
Functional errors with formatted output
Last updated 4 years ago by wooorm .
MIT · Repository · Bugs · Original npm
$ cnpm install fault 
SYNC missed versions from official npm registry.

fault

Build Coverage Downloads Size

Functional errors with formatted output.

Install

This package is ESM only: Node 12+ is needed to use it and it must be imported instead of required.

npm:

npm install fault

Use

import fault from 'fault'

throw fault('Hello %s!', 'Eric')

Yields:

Error: Hello Eric!
    at FormattedError (~/node_modules/fault/index.js:30:12)
    at Object.<anonymous> (~/example.js:3:7)
    …

Or, format a float in a type error:

import fault from 'fault'

throw fault.type('Who doesn’t like %f? \uD83C\uDF70', Math.PI)

Yields:

TypeError: Who doesn’t like 3.141593? ????
    at Function.FormattedError [as type] (~/node_modules/fault/index.js:30:12)
    at Object.<anonymous> (~/example.js:3:7)

API

This package exports the following identifiers: fault, create. There is no default export.

fault(format?[, values…])

Create an error with a printf-like formatted message.

Parameters
  • format (string, optional)
  • values (*, optional)
Formatters
  • %s — String
  • %b — Binary
  • %c — Character
  • %d — Decimal
  • %f — Floating point
  • %o — Octal
  • %x — Lowercase hexadecimal
  • %X — Uppercase hexadecimal
  • % followed by any other character, prints that character

See samsonjs/format for argument parsing.

Returns

An instance of Error.

Other errors

create(Constructor)

Factory to create instances of ErrorConstructor with support for formatting. Used internally to wrap the global error constructors, exposed for custom errors. Returns a function just like fault.

License

MIT © Titus Wormer

Current Tags

  • 2.0.1                                ...           latest (4 years ago)

4 Versions

  • 2.0.1                                ...           4 years ago
  • 2.0.0                                ...           4 years ago
  • 1.0.3                                ...           6 years ago
  • 1.0.4                                ...           6 years ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (1)
Dev Dependencies (10)
Dependents (0)
None

Copyright 2013 - present © cnpmjs.org