Spaces:
Sleeping
Sleeping
| ; | |
| var format = require('util').format; | |
| var ERR_CODE = 'ARGError'; | |
| /*:nodoc:* | |
| * argumentError(argument, message) -> TypeError | |
| * - argument (Object): action with broken argument | |
| * - message (String): error message | |
| * | |
| * Error format helper. An error from creating or using an argument | |
| * (optional or positional). The string value of this exception | |
| * is the message, augmented with information | |
| * about the argument that caused it. | |
| * | |
| * #####Example | |
| * | |
| * var argumentErrorHelper = require('./argument/error'); | |
| * if (conflictOptionals.length > 0) { | |
| * throw argumentErrorHelper( | |
| * action, | |
| * format('Conflicting option string(s): %s', conflictOptionals.join(', ')) | |
| * ); | |
| * } | |
| * | |
| **/ | |
| module.exports = function (argument, message) { | |
| var argumentName = null; | |
| var errMessage; | |
| var err; | |
| if (argument.getName) { | |
| argumentName = argument.getName(); | |
| } else { | |
| argumentName = '' + argument; | |
| } | |
| if (!argumentName) { | |
| errMessage = message; | |
| } else { | |
| errMessage = format('argument "%s": %s', argumentName, message); | |
| } | |
| err = new TypeError(errMessage); | |
| err.code = ERR_CODE; | |
| return err; | |
| }; | |