From 08208543ba01b7fa0984eb9c63e5a19069cca2ff Mon Sep 17 00:00:00 2001 From: "Kamat, Trivikram" <16024985+trivikr@users.noreply.github.com> Date: Sat, 24 Aug 2019 18:35:50 -0700 Subject: [PATCH] doc,errors: add extends to derived classes PR-URL: https://github.com/nodejs/node/pull/29303 Reviewed-By: James M Snell Reviewed-By: Luigi Pinca --- doc/api/assert.md | 6 ++++-- doc/api/errors.md | 45 +++++++++++++++++++++++++--------------- tools/doc/type-parser.js | 2 ++ 3 files changed, 34 insertions(+), 19 deletions(-) diff --git a/doc/api/assert.md b/doc/api/assert.md index fb33994df1586d..6057ba5c2afff1 100644 --- a/doc/api/assert.md +++ b/doc/api/assert.md @@ -10,8 +10,10 @@ lenient legacy mode. ## Class: assert.AssertionError -A subclass of `Error` that indicates the failure of an assertion. All errors -thrown by the `assert` module will be instances of the `AssertionError` class. +* Extends: {errors.Error} + +Indicates the failure of an assertion. All errors thrown by the `assert` module +will be instances of the `AssertionError` class. ### new assert.AssertionError(options) -A generic JavaScript `Error` object that does not denote any specific +A generic JavaScript {Error} object that does not denote any specific circumstance of why the error occurred. `Error` objects capture a "stack trace" detailing the point in the code at which the `Error` was instantiated, and may provide a text description of the error. @@ -352,14 +352,18 @@ loop tick. ## Class: AssertionError -A subclass of `Error` that indicates the failure of an assertion. For details, -see [`Class: assert.AssertionError`][]. +* Extends: {errors.Error} + +Indicates the failure of an assertion. For details, see +[`Class: assert.AssertionError`][]. ## Class: RangeError -A subclass of `Error` that indicates that a provided argument was not within the -set or range of acceptable values for a function; whether that is a numeric -range, or outside the set of options for a given function parameter. +* Extends: {errors.Error} + +Indicates that a provided argument was not within the set or range of +acceptable values for a function; whether that is a numeric range, or +outside the set of options for a given function parameter. ```js require('net').connect(-1); @@ -371,9 +375,11 @@ of argument validation. ## Class: ReferenceError -A subclass of `Error` that indicates that an attempt is being made to access a -variable that is not defined. Such errors commonly indicate typos in code, or -an otherwise broken program. +* Extends: {errors.Error} + +Indicates that an attempt is being made to access a variable that is not +defined. Such errors commonly indicate typos in code, or an otherwise broken +program. While client code may generate and propagate these errors, in practice, only V8 will do so. @@ -389,11 +395,12 @@ or its dependencies. ## Class: SyntaxError -A subclass of `Error` that indicates that a program is not valid JavaScript. -These errors may only be generated and propagated as a result of code -evaluation. Code evaluation may happen as a result of `eval`, `Function`, -`require`, or [vm][]. These errors are almost always indicative of a broken -program. +* Extends: {errors.Error} + +Indicates that a program is not valid JavaScript. These errors may only be +generated and propagated as a result of code evaluation. Code evaluation may +happen as a result of `eval`, `Function`, `require`, or [vm][]. These errors +are almost always indicative of a broken program. ```js try { @@ -408,6 +415,8 @@ they may only be caught by other contexts. ## Class: SystemError +* Extends: {errors.Error} + Node.js generates system errors when exceptions occur within its runtime environment. These usually occur when an application violates an operating system constraint. For example, a system error will occur if an application @@ -548,9 +557,11 @@ program. For a comprehensive list, see the [`errno`(3) man page][]. ## Class: TypeError -A subclass of `Error` that indicates that a provided argument is not an -allowable type. For example, passing a function to a parameter which expects a -string would be considered a `TypeError`. +* Extends {errors.Error} + +Indicates that a provided argument is not an allowable type. For example, +passing a function to a parameter which expects a string would be considered +a `TypeError`. ```js require('url').parse(() => { }); diff --git a/tools/doc/type-parser.js b/tools/doc/type-parser.js index 6acc4196a36d99..c2c1147639bba7 100644 --- a/tools/doc/type-parser.js +++ b/tools/doc/type-parser.js @@ -64,6 +64,8 @@ const customTypesMap = { 'Domain': 'domain.html#domain_class_domain', + 'errors.Error': 'errors.html#errors_class_error', + 'import.meta': 'esm.html#esm_import_meta', 'EventEmitter': 'events.html#events_class_eventemitter',