bigint-crypto-utils/node_modules/jsdoc-api/README.md

235 lines
11 KiB
Markdown
Raw Normal View History

[![view on npm](http://img.shields.io/npm/v/jsdoc-api.svg)](https://www.npmjs.org/package/jsdoc-api)
[![npm module downloads](http://img.shields.io/npm/dt/jsdoc-api.svg)](https://www.npmjs.org/package/jsdoc-api)
[![Build Status](https://travis-ci.org/jsdoc2md/jsdoc-api.svg?branch=master)](https://travis-ci.org/jsdoc2md/jsdoc-api)
[![Coverage Status](https://coveralls.io/repos/jsdoc2md/jsdoc-api/badge.svg?branch=master&service=github)](https://coveralls.io/github/jsdoc2md/jsdoc-api?branch=master)
[![Dependency Status](https://badgen.net/david/dep/jsdoc2md/jsdoc-api)](https://david-dm.org/jsdoc2md/jsdoc-api)
[![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](https://github.com/feross/standard)
[![Join the chat at https://gitter.im/jsdoc2md/jsdoc2md](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/jsdoc2md/jsdoc2md?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
# jsdoc-api
A programmatic interface for [jsdoc3](https://github.com/jsdoc3/jsdoc) with a few features:
- Sync and async (Promise) interfaces on the two main jsdoc operations ('explain' and 'render documentation').
- Input (source code) can supplied as a string or set of file names/globs.
- Optional caching, dramatically speeding up future invocations with the same input.
## Synopsis
```js
> const jsdoc = require('jsdoc-api')
> jsdoc.explainSync({ source: '/** example doclet */ \n var example = true' })
[ { comment: '/** example doclet *',
meta:
{ range: [ 28, 42 ],
filename: 'nkrf18zlymohia4i29a0zkyt84obt9.js',
lineno: 2,
path: '/var/folders/74/tqh7thm11tq72d7sjty9qvdh0000gn/T',
code:
{ id: 'astnode100000002',
name: 'example',
type: 'Literal',
value: true } },
description: 'example doclet',
name: 'example',
longname: 'example',
kind: 'member',
scope: 'global' },
{ kind: 'package',
longname: 'package:undefined',
files: [ '/var/folders/74/tqh7thm11tq72d7sjty9qvdh0000gn/T/nkrf18zlymohia4i29a0zkyt84obt9.js' ] } ]
```
# API Reference
* [jsdoc-api](#module_jsdoc-api)
* _static_
* [.cache](#module_jsdoc-api.cache) : [<code>cache-point</code>](https://github.com/75lb/cache-point)
* [.explainSync([options])](#module_jsdoc-api.explainSync) ⇒ <code>Array.&lt;object&gt;</code>
* [.explain([options])](#module_jsdoc-api.explain) ⇒ <code>Promise</code>
* [.renderSync([options])](#module_jsdoc-api.renderSync)
* _inner_
* [~JsdocOptions](#module_jsdoc-api..JsdocOptions)
* [.files](#module_jsdoc-api..JsdocOptions+files) : <code>string</code> \| <code>Array.&lt;string&gt;</code>
* [.source](#module_jsdoc-api..JsdocOptions+source) : <code>string</code>
* [.cache](#module_jsdoc-api..JsdocOptions+cache) : <code>boolean</code>
* [.access](#module_jsdoc-api..JsdocOptions+access) : <code>string</code>
* [.configure](#module_jsdoc-api..JsdocOptions+configure) : <code>string</code>
* [.destination](#module_jsdoc-api..JsdocOptions+destination) : <code>string</code>
* [.encoding](#module_jsdoc-api..JsdocOptions+encoding) : <code>string</code>
* [.private](#module_jsdoc-api..JsdocOptions+private) : <code>boolean</code>
* [.package](#module_jsdoc-api..JsdocOptions+package) : <code>string</code>
* [.pedantic](#module_jsdoc-api..JsdocOptions+pedantic) : <code>boolean</code>
* [.query](#module_jsdoc-api..JsdocOptions+query) : <code>string</code>
* [.recurse](#module_jsdoc-api..JsdocOptions+recurse) : <code>boolean</code>
* [.readme](#module_jsdoc-api..JsdocOptions+readme) : <code>string</code>
* [.template](#module_jsdoc-api..JsdocOptions+template) : <code>string</code>
* [.tutorials](#module_jsdoc-api..JsdocOptions+tutorials) : <code>string</code>
<a name="module_jsdoc-api.cache"></a>
### jsdoc.cache : [<code>cache-point</code>](https://github.com/75lb/cache-point)
The [cache-point](https://github.com/75lb/cache-point) instance used when `cache: true` is specified on `.explain()` or `.explainSync()`.
**Kind**: static property of [<code>jsdoc-api</code>](#module_jsdoc-api)
<a name="module_jsdoc-api.explainSync"></a>
### jsdoc.explainSync([options]) ⇒ <code>Array.&lt;object&gt;</code>
Returns jsdoc explain output.
**Kind**: static method of [<code>jsdoc-api</code>](#module_jsdoc-api)
**Prerequisite**: Requires node v0.12 or above
| Param | Type |
| --- | --- |
| [options] | [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions) |
<a name="module_jsdoc-api.explain"></a>
### jsdoc.explain([options]) ⇒ <code>Promise</code>
Returns a promise for the jsdoc explain output.
**Kind**: static method of [<code>jsdoc-api</code>](#module_jsdoc-api)
**Fulfil**: <code>object[]</code> - jsdoc explain output
| Param | Type |
| --- | --- |
| [options] | [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions) |
<a name="module_jsdoc-api.renderSync"></a>
### jsdoc.renderSync([options])
Render jsdoc documentation.
**Kind**: static method of [<code>jsdoc-api</code>](#module_jsdoc-api)
**Prerequisite**: Requires node v0.12 or above
| Param | Type |
| --- | --- |
| [options] | [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions) |
**Example**
```js
jsdoc.renderSync({ files: 'lib/*', destination: 'api-docs' })
```
<a name="module_jsdoc-api..JsdocOptions"></a>
### jsdoc-api~JsdocOptions
The jsdoc options, common for all operations.
**Kind**: inner class of [<code>jsdoc-api</code>](#module_jsdoc-api)
* [~JsdocOptions](#module_jsdoc-api..JsdocOptions)
* [.files](#module_jsdoc-api..JsdocOptions+files) : <code>string</code> \| <code>Array.&lt;string&gt;</code>
* [.source](#module_jsdoc-api..JsdocOptions+source) : <code>string</code>
* [.cache](#module_jsdoc-api..JsdocOptions+cache) : <code>boolean</code>
* [.access](#module_jsdoc-api..JsdocOptions+access) : <code>string</code>
* [.configure](#module_jsdoc-api..JsdocOptions+configure) : <code>string</code>
* [.destination](#module_jsdoc-api..JsdocOptions+destination) : <code>string</code>
* [.encoding](#module_jsdoc-api..JsdocOptions+encoding) : <code>string</code>
* [.private](#module_jsdoc-api..JsdocOptions+private) : <code>boolean</code>
* [.package](#module_jsdoc-api..JsdocOptions+package) : <code>string</code>
* [.pedantic](#module_jsdoc-api..JsdocOptions+pedantic) : <code>boolean</code>
* [.query](#module_jsdoc-api..JsdocOptions+query) : <code>string</code>
* [.recurse](#module_jsdoc-api..JsdocOptions+recurse) : <code>boolean</code>
* [.readme](#module_jsdoc-api..JsdocOptions+readme) : <code>string</code>
* [.template](#module_jsdoc-api..JsdocOptions+template) : <code>string</code>
* [.tutorials](#module_jsdoc-api..JsdocOptions+tutorials) : <code>string</code>
<a name="module_jsdoc-api..JsdocOptions+files"></a>
#### options.files : <code>string</code> \| <code>Array.&lt;string&gt;</code>
One or more filenames to process. Either this or `source` must be supplied.
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
<a name="module_jsdoc-api..JsdocOptions+source"></a>
#### options.source : <code>string</code>
A string containing source code to process. Either this or `files` must be supplied.
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
<a name="module_jsdoc-api..JsdocOptions+cache"></a>
#### options.cache : <code>boolean</code>
Set to `true` to cache the output - future invocations with the same input will return immediately.
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
<a name="module_jsdoc-api..JsdocOptions+access"></a>
#### options.access : <code>string</code>
Only display symbols with the given access: "public", "protected", "private" or "undefined", or "all" for all access levels. Default: all except "private".
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
<a name="module_jsdoc-api..JsdocOptions+configure"></a>
#### options.configure : <code>string</code>
The path to the configuration file. Default: path/to/jsdoc/conf.json.
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
<a name="module_jsdoc-api..JsdocOptions+destination"></a>
#### options.destination : <code>string</code>
The path to the output folder. Use "console" to dump data to the console. Default: ./out/.
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
<a name="module_jsdoc-api..JsdocOptions+encoding"></a>
#### options.encoding : <code>string</code>
Assume this encoding when reading all source files. Default: utf8.
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
<a name="module_jsdoc-api..JsdocOptions+private"></a>
#### options.private : <code>boolean</code>
Display symbols marked with the @private tag. Equivalent to "--access all". Default: false.
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
<a name="module_jsdoc-api..JsdocOptions+package"></a>
#### options.package : <code>string</code>
The path to the project's package file. Default: path/to/sourcefiles/package.json
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
<a name="module_jsdoc-api..JsdocOptions+pedantic"></a>
#### options.pedantic : <code>boolean</code>
Treat errors as fatal errors, and treat warnings as errors. Default: false.
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
<a name="module_jsdoc-api..JsdocOptions+query"></a>
#### options.query : <code>string</code>
A query string to parse and store in jsdoc.env.opts.query. Example: foo=bar&baz=true.
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
<a name="module_jsdoc-api..JsdocOptions+recurse"></a>
#### options.recurse : <code>boolean</code>
Recurse into subdirectories when scanning for source files and tutorials.
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
<a name="module_jsdoc-api..JsdocOptions+readme"></a>
#### options.readme : <code>string</code>
The path to the project's README file. Default: path/to/sourcefiles/README.md.
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
<a name="module_jsdoc-api..JsdocOptions+template"></a>
#### options.template : <code>string</code>
The path to the template to use. Default: path/to/jsdoc/templates/default.
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
<a name="module_jsdoc-api..JsdocOptions+tutorials"></a>
#### options.tutorials : <code>string</code>
Directory in which JSDoc should search for tutorials.
**Kind**: instance property of [<code>JsdocOptions</code>](#module_jsdoc-api..JsdocOptions)
* * *
&copy; 2015-19 Lloyd Brookes \<75pound@gmail.com\>. Documented by [jsdoc-to-markdown](https://github.com/jsdoc2md/jsdoc-to-markdown).