Source-sorting by default (#410)

* Source-sorting by default

Many changes

* Uses a new version of module-deps that exposes a sort key
  we use to sort documentation.
* Adds inference for methods in objects
* Groups events into a separate comment property

* Add jsdoc property. Refs https://github.com/documentationjs/documentation/pull/388#issuecomment-215791547

* Namespaces and paths

* More powerful paths: paths now include name, kind, and scope
* comments now include a 'namespace' property with a formatted namespace

* Fix tests

* Re-ignore fonts

* Nix sourceKey from output

* Pin dependency versions

* Fix module-deps-sortable ref

* Update tests for right deps
This commit is contained in:
Tom MacWright 2016-04-29 18:09:52 -04:00
parent e7a8c23c81
commit 3da1ff6dd0
80 changed files with 4938 additions and 5587 deletions

View File

@ -118,7 +118,7 @@ module.exports = function (indexes, options, callback) {
options.github && github
))
.filter(Boolean)
.sort(sort.bind(undefined, options.order)))));
.sort(sort))));
} catch (e) {
callback(e);
}

View File

@ -2,6 +2,17 @@
var hasOwnProperty = Object.prototype.hasOwnProperty;
function pick(n) {
var item = {
name: n.name,
kind: n.kind
};
if (n.scope) {
item.scope = n.scope;
}
return item;
}
/**
* @param {Array<Object>} comments an array of parsed comments
* @returns {Array<Object>} nested comments, with only root comments
@ -101,9 +112,30 @@ module.exports = function (comments) {
comment.members[scope] = node.members[scope];
}
comment.path = path.map(function (n) {
return n.name;
}).concat(comment.name);
if (comment.members.instance.length) {
comment.members.events = comment.members.instance.filter(function (member) {
return member.kind === 'event';
});
comment.members.instance = comment.members.instance.filter(function (member) {
return member.kind !== 'event';
});
}
comment.path = path.map(pick).concat(pick(comment));
var scopeChars = {
instance: '#',
static: '.'
};
comment.namespace = comment.path.reduce(function (memo, part) {
if (part.kind === 'event') {
return memo + '.event:' + part.name;
}
return memo + (scopeChars[part.scope] || '') + part.name;
}, '');
if (hasUndefinedParent) {
var memberOfTag = comment.tags.filter(function (tag) {
@ -121,6 +153,7 @@ module.exports = function (comments) {
result.push(comment);
}
}
}
return result;

View File

@ -48,6 +48,9 @@ module.exports = function () {
} else if (t.isExpressionStatement(path)) {
// module.exports = function() {}
findKind(path.node.expression.right);
} else if (t.isProperty(path)) {
// { foo: function() {} }
findKind(path.node.value);
}
}

View File

@ -13,12 +13,13 @@ function makeTokenizer(type, regex) {
}
return eat(match[0])({
'type': type,
'url': match[1],
'title': null,
'children': [{
'type': 'text',
'value': match[2] || match[1]
type: type,
url: match[1],
title: null,
jsdoc: true,
children: [{
type: 'text',
value: match[2] || match[1]
}]
});
};

View File

@ -1,6 +1,6 @@
'use strict';
var mdeps = require('module-deps'),
var mdeps = require('module-deps-sortable'),
fs = require('fs'),
path = require('path'),
babelify = require('babelify'),

View File

@ -15,6 +15,7 @@ module.exports = function (comments, opts, callback) {
walk(comments, function (comment) {
delete comment.errors;
delete comment.context.sortKey;
});
return callback(null, JSON.stringify(comments, null, 2));

View File

@ -6,6 +6,14 @@ var babylon = require('babylon'),
isJSDocComment = require('../../lib/is_jsdoc_comment'),
parse = require('../../lib/parse');
function leftPad(str, width) {
str = str.toString();
while (str.length < width) {
str = '0' + str;
}
return str;
}
/**
* Receives a module-dep item,
* reads the file, parses the JavaScript, and parses the JSDoc.
@ -50,7 +58,8 @@ function parseJavaScript(data) {
function parseComment(comment) {
var context = {
loc: extend({}, JSON.parse(JSON.stringify(path.node.loc))),
file: data.file
file: data.file,
sortKey: data.sortKey + ' ' + leftPad(path.node.loc.start.line, 8)
};
// Avoid visiting the same comment twice as a leading
// and trailing node

View File

@ -18,7 +18,8 @@ function parsePolyglot(data) {
.map(function (comment) {
var context = {
loc: extend({}, comment.loc),
file: data.file
file: data.file,
sortKey: data.file + ' ' + comment.loc.start.line
};
return parse(comment.value, comment.loc, context);
});

View File

@ -1,49 +1,14 @@
'use strict';
/**
* Given a comment, get its sorting key: this is either the comment's
* name tag, or a hardcoded sorting index given by a user-provided
* `order` array.
*
* @param {Object} comment parsed documentation object
* @param {Array<string>} [order=[]] an optional list of namepaths
* @returns {string} sortable key
* @private
*/
function getSortKey(comment, order) {
var key = comment.context.file + ':' + comment.context.loc.start.line || comment.name;
if (order && order.indexOf(key) !== -1) {
return order.indexOf(key);
}
return key;
}
/**
* Sort two documentation objects, given an optional order object. Returns
* a numeric sorting value that is compatible with stream-sort.
*
* @param {Array<string>} order an array of namepaths that will be sorted
* in the order given.
* @param {Object} a documentation object
* @param {Object} b documentation object
* @return {number} sorting value
* @private
*/
module.exports = function sortDocs(order, a, b) {
a = getSortKey(a, order);
b = getSortKey(b, order);
if (typeof a === 'number' && typeof b === 'number') {
return a - b;
}
if (typeof a === 'number') {
return -1;
}
if (typeof b === 'number') {
return 1;
}
return a.toLowerCase().localeCompare(b.toLowerCase());
module.exports = function sortDocs(a, b) {
return a.context.sortKey.localeCompare(b.context.sortKey);
};

View File

@ -22,8 +22,8 @@
"debounce": "^1.0.0",
"disparity": "^2.0.0",
"doctrine": "^1.1.0",
"documentation-theme-default": "3.0.0-beta1",
"documentation-theme-utils": "^2.0.2",
"documentation-theme-default": "3.0.0",
"documentation-theme-utils": "^3.0.0",
"events": "^1.1.0",
"extend": "^3.0.0",
"get-comments": "^1.0.1",
@ -33,7 +33,7 @@
"mdast-util-inject": "^1.1.0",
"micromatch": "^2.1.6",
"mime": "^1.3.4",
"module-deps": "^4.0.2",
"module-deps-sortable": "4.0.6",
"parse-filepath": "^0.6.3",
"remark": "^4.1.2",
"remark-toc": "^3.0.0",

View File

@ -22,6 +22,8 @@ function documentation(args, options, callback, parseJSON) {
exec(args.join(' '), options, callback);
}
var UPDATE = !!process.env.UPDATE;
test('readme command', function (group) {
var fixtures = path.join(__dirname, 'fixture/readme');
var sourceFile = path.join(fixtures, 'index.js');
@ -46,12 +48,19 @@ test('readme command', function (group) {
});
var expectedFile = path.join(fixtures, 'README.output.md');
var expectedPath = path.join(fixtures, 'README.output.md');
var expected = fs.readFileSync(expectedFile, 'utf-8');
group.test('updates README.md', function (t) {
documentation(['readme index.js -s API'], {cwd: d}, function (err, stdout) {
var outputPath = path.join(d, 'README.md');
t.error(err);
var actual = fs.readFileSync(path.join(d, 'README.md'), 'utf-8');
if (UPDATE) {
fs.writeFileSync(expectedPath, fs.readFileSync(outputPath, 'utf-8'));
}
var actual = fs.readFileSync(outputPath, 'utf-8');
t.same(actual, expected, 'generated readme output');
t.end();
});

View File

@ -278,6 +278,7 @@ test('write to html, highlightAuto', function (t) {
documentation(['build --shallow ' + fixture + ' -c ' + config + ' -f html -o ' + dstDir], {},
function (err) {
t.ifErr(err);
var result = fs.readFileSync(path.join(dstDir, 'index.html'), 'utf8');
t.ok(result.indexOf('<span class="hljs-number">42</span>') > 0,
'javascript is recognized by highlightjs');

View File

@ -118,8 +118,12 @@
"static": []
},
"path": [
"foo"
]
{
"name": "foo",
"kind": "function"
}
],
"namespace": "foo"
},
{
"description": {
@ -276,8 +280,12 @@
"static": []
},
"path": [
"main"
]
{
"name": "main",
"kind": "function"
}
],
"namespace": "main"
},
{
"description": {
@ -434,7 +442,11 @@
"static": []
},
"path": [
"index"
]
{
"name": "index",
"kind": "function"
}
],
"namespace": "index"
}
]

View File

@ -236,8 +236,12 @@
"static": []
},
"path": [
"returnTwo"
]
{
"name": "returnTwo",
"kind": "function"
}
],
"namespace": "returnTwo"
},
{
"description": {
@ -394,7 +398,11 @@
"static": []
},
"path": [
"simple.input"
]
{
"name": "simple.input",
"kind": "function"
}
],
"namespace": "simple.input"
}
]

View File

@ -115,7 +115,11 @@
"static": []
},
"path": [
"nixon"
]
{
"name": "nixon",
"kind": "function"
}
],
"namespace": "nixon"
}
]

View File

@ -390,9 +390,17 @@
"static": []
},
"path": [
"MyClass",
"getFoo"
]
{
"name": "MyClass",
"kind": "class"
},
{
"name": "getFoo",
"kind": "function",
"scope": "instance"
}
],
"namespace": "MyClass#getFoo"
},
{
"description": {
@ -549,15 +557,28 @@
"static": []
},
"path": [
"MyClass",
"getUndefined"
]
{
"name": "MyClass",
"kind": "class"
},
{
"name": "getUndefined",
"kind": "function",
"scope": "instance"
}
],
"namespace": "MyClass#getUndefined"
}
],
"static": []
"static": [],
"events": []
},
"path": [
"MyClass"
]
{
"name": "MyClass",
"kind": "class"
}
],
"namespace": "MyClass"
}
]

View File

@ -95,7 +95,11 @@
"static": []
},
"path": [
"returnTwo"
]
{
"name": "returnTwo",
"kind": "function"
}
],
"namespace": "returnTwo"
}
]

View File

@ -161,123 +161,12 @@
"static": []
},
"path": [
"multiplyTwice"
]
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Similar, but with an array",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 27,
"offset": 26
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 27,
"offset": 26
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 27,
"offset": 26
}
}
},
"tags": [],
"loc": {
"start": {
"line": 7,
"column": 0
},
"end": {
"line": 9,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 10,
"column": 0
},
"end": {
"line": 11,
"column": 1
}
},
"code": "/**\n * This function destructures with defaults.\n */\nfunction destructure({phoneNumbers = [], emailAddresses = [], ...params} = {}) {\n}\n\n/**\n * Similar, but with an array\n */\nfunction destructure([a, b, c]) {\n}\n\n/**\n * This function returns the number one.\n * @param {Array<Number>} a an array of numbers\n * @returns {Number} numberone\n */\nvar multiply = (a, b) => a * b;\n\n/**\n * This is a sink\n */\nclass Sink {\n /**\n * This is a property of the sink.\n */\n staticProp = 42;\n\n /**\n * Is it empty\n */\n empty() {\n return 1;\n }\n\n /**\n * This method says hello\n */\n static hello() {\n return 'hello';\n }\n\n /**\n * This is a getter method: it should be documented\n * as a property.\n */\n get aGetter() {\n return 42;\n }\n\n /**\n * @param {number} height the height of the thing\n * @param {number} width the width of the thing\n */\n constructor(height, width) {\n this.height = height;\n this.width = width;\n }\n}\n\n/**\n * This function takes rest params\n */\nfunction functionWithRest(...someParams) {\n}\n\n/**\n * So does this one, with types\n */\nfunction functionWithRestAndType(...someParams: number) {\n}\n\n// FUNCTION TYPES\n\n/**\n * This is an async method\n */\nasync function foo() { }\n\nexport default multiply;\n\n/**\n * This function returns the number one.\n * @returns {Number} numberone\n */\nmodule.exports = () => (<p>hello</p>);\n\n/**\n * This tests our support of optional parameters in ES6\n */\nfunction veryImportantTransform(foo = 'bar') {\n return \"42\";\n}\n\n// ACCESS LEVELS\n\n/**\n * A private function\n * @private\n */\nfunction iAmPrivate() { }\n\n/**\n * A protected function\n * @protected\n */\nfunction iAmProtected() { }\n\n/**\n * A public function\n * @public\n */\nfunction iAmPublic() { }\n\n/**\n * A private function using the access tag\n * @access private\n */\nfunction iAmAccessPrivate() { }\n\n/**\n * This is re-exported\n */\nexport { execute } from 'external-module';\n"
},
"errors": [],
"name": "destructure",
"kind": "function",
"params": [
{
"title": "param",
"name": "$0",
"type": {
"type": "NameExpression",
"name": "Array"
},
"properties": [
{
"title": "param",
"name": "$0.a",
"lineNumber": 10
},
{
"title": "param",
"name": "$0.b",
"lineNumber": 10
},
{
"title": "param",
"name": "$0.c",
"lineNumber": 10
}
]
"name": "multiplyTwice",
"kind": "function"
}
],
"members": {
"instance": [],
"static": []
},
"path": [
"destructure"
]
"namespace": "multiplyTwice"
},
{
"description": {
@ -395,103 +284,12 @@
"static": []
},
"path": [
"destructure"
]
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "A protected function",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
}
}
},
"tags": [
{
"title": "protected",
"description": null,
"lineNumber": 2
"name": "destructure",
"kind": "function"
}
],
"loc": {
"start": {
"line": 103,
"column": 0
},
"end": {
"line": 106,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 107,
"column": 0
},
"end": {
"line": 107,
"column": 27
}
},
"code": "/**\n * This function destructures with defaults.\n */\nfunction destructure({phoneNumbers = [], emailAddresses = [], ...params} = {}) {\n}\n\n/**\n * Similar, but with an array\n */\nfunction destructure([a, b, c]) {\n}\n\n/**\n * This function returns the number one.\n * @param {Array<Number>} a an array of numbers\n * @returns {Number} numberone\n */\nvar multiply = (a, b) => a * b;\n\n/**\n * This is a sink\n */\nclass Sink {\n /**\n * This is a property of the sink.\n */\n staticProp = 42;\n\n /**\n * Is it empty\n */\n empty() {\n return 1;\n }\n\n /**\n * This method says hello\n */\n static hello() {\n return 'hello';\n }\n\n /**\n * This is a getter method: it should be documented\n * as a property.\n */\n get aGetter() {\n return 42;\n }\n\n /**\n * @param {number} height the height of the thing\n * @param {number} width the width of the thing\n */\n constructor(height, width) {\n this.height = height;\n this.width = width;\n }\n}\n\n/**\n * This function takes rest params\n */\nfunction functionWithRest(...someParams) {\n}\n\n/**\n * So does this one, with types\n */\nfunction functionWithRestAndType(...someParams: number) {\n}\n\n// FUNCTION TYPES\n\n/**\n * This is an async method\n */\nasync function foo() { }\n\nexport default multiply;\n\n/**\n * This function returns the number one.\n * @returns {Number} numberone\n */\nmodule.exports = () => (<p>hello</p>);\n\n/**\n * This tests our support of optional parameters in ES6\n */\nfunction veryImportantTransform(foo = 'bar') {\n return \"42\";\n}\n\n// ACCESS LEVELS\n\n/**\n * A private function\n * @private\n */\nfunction iAmPrivate() { }\n\n/**\n * A protected function\n * @protected\n */\nfunction iAmProtected() { }\n\n/**\n * A public function\n * @public\n */\nfunction iAmPublic() { }\n\n/**\n * A private function using the access tag\n * @access private\n */\nfunction iAmAccessPrivate() { }\n\n/**\n * This is re-exported\n */\nexport { execute } from 'external-module';\n"
},
"errors": [],
"access": "protected",
"name": "iAmProtected",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
"iAmProtected"
]
"namespace": "destructure"
},
{
"description": {
@ -502,7 +300,7 @@
"children": [
{
"type": "text",
"value": "A public function",
"value": "Similar, but with an array",
"position": {
"start": {
"line": 1,
@ -511,8 +309,8 @@
},
"end": {
"line": 1,
"column": 18,
"offset": 17
"column": 27,
"offset": 26
},
"indent": []
}
@ -526,8 +324,8 @@
},
"end": {
"line": 1,
"column": 18,
"offset": 17
"column": 27,
"offset": 26
},
"indent": []
}
@ -541,139 +339,76 @@
},
"end": {
"line": 1,
"column": 18,
"offset": 17
}
}
},
"tags": [
{
"title": "public",
"description": null,
"lineNumber": 2
}
],
"loc": {
"start": {
"line": 109,
"column": 0
},
"end": {
"line": 112,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 113,
"column": 0
},
"end": {
"line": 113,
"column": 24
}
},
"code": "/**\n * This function destructures with defaults.\n */\nfunction destructure({phoneNumbers = [], emailAddresses = [], ...params} = {}) {\n}\n\n/**\n * Similar, but with an array\n */\nfunction destructure([a, b, c]) {\n}\n\n/**\n * This function returns the number one.\n * @param {Array<Number>} a an array of numbers\n * @returns {Number} numberone\n */\nvar multiply = (a, b) => a * b;\n\n/**\n * This is a sink\n */\nclass Sink {\n /**\n * This is a property of the sink.\n */\n staticProp = 42;\n\n /**\n * Is it empty\n */\n empty() {\n return 1;\n }\n\n /**\n * This method says hello\n */\n static hello() {\n return 'hello';\n }\n\n /**\n * This is a getter method: it should be documented\n * as a property.\n */\n get aGetter() {\n return 42;\n }\n\n /**\n * @param {number} height the height of the thing\n * @param {number} width the width of the thing\n */\n constructor(height, width) {\n this.height = height;\n this.width = width;\n }\n}\n\n/**\n * This function takes rest params\n */\nfunction functionWithRest(...someParams) {\n}\n\n/**\n * So does this one, with types\n */\nfunction functionWithRestAndType(...someParams: number) {\n}\n\n// FUNCTION TYPES\n\n/**\n * This is an async method\n */\nasync function foo() { }\n\nexport default multiply;\n\n/**\n * This function returns the number one.\n * @returns {Number} numberone\n */\nmodule.exports = () => (<p>hello</p>);\n\n/**\n * This tests our support of optional parameters in ES6\n */\nfunction veryImportantTransform(foo = 'bar') {\n return \"42\";\n}\n\n// ACCESS LEVELS\n\n/**\n * A private function\n * @private\n */\nfunction iAmPrivate() { }\n\n/**\n * A protected function\n * @protected\n */\nfunction iAmProtected() { }\n\n/**\n * A public function\n * @public\n */\nfunction iAmPublic() { }\n\n/**\n * A private function using the access tag\n * @access private\n */\nfunction iAmAccessPrivate() { }\n\n/**\n * This is re-exported\n */\nexport { execute } from 'external-module';\n"
},
"errors": [],
"access": "public",
"name": "iAmPublic",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
"iAmPublic"
]
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This is re-exported",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
"column": 27,
"offset": 26
}
}
},
"tags": [],
"loc": {
"start": {
"line": 121,
"line": 7,
"column": 0
},
"end": {
"line": 123,
"line": 9,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 124,
"line": 10,
"column": 0
},
"end": {
"line": 124,
"column": 42
"line": 11,
"column": 1
}
},
"code": "/**\n * This function destructures with defaults.\n */\nfunction destructure({phoneNumbers = [], emailAddresses = [], ...params} = {}) {\n}\n\n/**\n * Similar, but with an array\n */\nfunction destructure([a, b, c]) {\n}\n\n/**\n * This function returns the number one.\n * @param {Array<Number>} a an array of numbers\n * @returns {Number} numberone\n */\nvar multiply = (a, b) => a * b;\n\n/**\n * This is a sink\n */\nclass Sink {\n /**\n * This is a property of the sink.\n */\n staticProp = 42;\n\n /**\n * Is it empty\n */\n empty() {\n return 1;\n }\n\n /**\n * This method says hello\n */\n static hello() {\n return 'hello';\n }\n\n /**\n * This is a getter method: it should be documented\n * as a property.\n */\n get aGetter() {\n return 42;\n }\n\n /**\n * @param {number} height the height of the thing\n * @param {number} width the width of the thing\n */\n constructor(height, width) {\n this.height = height;\n this.width = width;\n }\n}\n\n/**\n * This function takes rest params\n */\nfunction functionWithRest(...someParams) {\n}\n\n/**\n * So does this one, with types\n */\nfunction functionWithRestAndType(...someParams: number) {\n}\n\n// FUNCTION TYPES\n\n/**\n * This is an async method\n */\nasync function foo() { }\n\nexport default multiply;\n\n/**\n * This function returns the number one.\n * @returns {Number} numberone\n */\nmodule.exports = () => (<p>hello</p>);\n\n/**\n * This tests our support of optional parameters in ES6\n */\nfunction veryImportantTransform(foo = 'bar') {\n return \"42\";\n}\n\n// ACCESS LEVELS\n\n/**\n * A private function\n * @private\n */\nfunction iAmPrivate() { }\n\n/**\n * A protected function\n * @protected\n */\nfunction iAmProtected() { }\n\n/**\n * A public function\n * @public\n */\nfunction iAmPublic() { }\n\n/**\n * A private function using the access tag\n * @access private\n */\nfunction iAmAccessPrivate() { }\n\n/**\n * This is re-exported\n */\nexport { execute } from 'external-module';\n"
},
"errors": [],
"name": "execute",
"name": "destructure",
"kind": "function",
"params": [
{
"title": "param",
"name": "$0",
"type": {
"type": "NameExpression",
"name": "Array"
},
"properties": [
{
"title": "param",
"name": "$0.a",
"lineNumber": 10
},
{
"title": "param",
"name": "$0.b",
"lineNumber": 10
},
{
"title": "param",
"name": "$0.c",
"lineNumber": 10
}
]
}
],
"members": {
"instance": [],
"static": []
},
"path": [
"execute"
]
{
"name": "destructure",
"kind": "function"
}
],
"namespace": "destructure"
},
{
"description": {
@ -925,8 +660,12 @@
"static": []
},
"path": [
"multiply"
]
{
"name": "multiply",
"kind": "function"
}
],
"namespace": "multiply"
},
{
"description": {
@ -1097,9 +836,17 @@
"static": []
},
"path": [
"Sink",
"empty"
]
{
"name": "Sink",
"kind": "class"
},
{
"name": "empty",
"kind": "function",
"scope": "instance"
}
],
"namespace": "Sink#empty"
},
{
"description": {
@ -1192,9 +939,17 @@
"static": []
},
"path": [
"Sink",
"aGetter"
]
{
"name": "Sink",
"kind": "class"
},
{
"name": "aGetter",
"kind": "member",
"scope": "instance"
}
],
"namespace": "Sink#aGetter"
},
{
"description": "",
@ -1375,9 +1130,17 @@
"static": []
},
"path": [
"Sink",
"constructor"
]
{
"name": "Sink",
"kind": "class"
},
{
"name": "constructor",
"kind": "function",
"scope": "instance"
}
],
"namespace": "Sink#constructor"
}
],
"static": [
@ -1468,15 +1231,28 @@
"static": []
},
"path": [
"Sink",
"hello"
]
{
"name": "Sink",
"kind": "class"
},
{
"name": "hello",
"kind": "function",
"scope": "static"
}
],
"namespace": "Sink.hello"
}
]
],
"events": []
},
"path": [
"Sink"
]
{
"name": "Sink",
"kind": "class"
}
],
"namespace": "Sink"
},
{
"description": {
@ -1562,8 +1338,11 @@
"static": []
},
"path": [
"staticProp"
]
{
"name": "staticProp"
}
],
"namespace": "staticProp"
},
{
"description": {
@ -1660,8 +1439,12 @@
"static": []
},
"path": [
"functionWithRest"
]
{
"name": "functionWithRest",
"kind": "function"
}
],
"namespace": "functionWithRest"
},
{
"description": {
@ -1762,8 +1545,12 @@
"static": []
},
"path": [
"functionWithRestAndType"
]
{
"name": "functionWithRestAndType",
"kind": "function"
}
],
"namespace": "functionWithRestAndType"
},
{
"description": {
@ -1850,8 +1637,12 @@
"static": []
},
"path": [
"foo"
]
{
"name": "foo",
"kind": "function"
}
],
"namespace": "foo"
},
{
"description": {
@ -2008,8 +1799,12 @@
"static": []
},
"path": [
"es6.input"
]
{
"name": "es6.input",
"kind": "function"
}
],
"namespace": "es6.input"
},
{
"description": {
@ -2103,7 +1898,299 @@
"static": []
},
"path": [
"veryImportantTransform"
]
{
"name": "veryImportantTransform",
"kind": "function"
}
],
"namespace": "veryImportantTransform"
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "A protected function",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
}
}
},
"tags": [
{
"title": "protected",
"description": null,
"lineNumber": 2
}
],
"loc": {
"start": {
"line": 103,
"column": 0
},
"end": {
"line": 106,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 107,
"column": 0
},
"end": {
"line": 107,
"column": 27
}
},
"code": "/**\n * This function destructures with defaults.\n */\nfunction destructure({phoneNumbers = [], emailAddresses = [], ...params} = {}) {\n}\n\n/**\n * Similar, but with an array\n */\nfunction destructure([a, b, c]) {\n}\n\n/**\n * This function returns the number one.\n * @param {Array<Number>} a an array of numbers\n * @returns {Number} numberone\n */\nvar multiply = (a, b) => a * b;\n\n/**\n * This is a sink\n */\nclass Sink {\n /**\n * This is a property of the sink.\n */\n staticProp = 42;\n\n /**\n * Is it empty\n */\n empty() {\n return 1;\n }\n\n /**\n * This method says hello\n */\n static hello() {\n return 'hello';\n }\n\n /**\n * This is a getter method: it should be documented\n * as a property.\n */\n get aGetter() {\n return 42;\n }\n\n /**\n * @param {number} height the height of the thing\n * @param {number} width the width of the thing\n */\n constructor(height, width) {\n this.height = height;\n this.width = width;\n }\n}\n\n/**\n * This function takes rest params\n */\nfunction functionWithRest(...someParams) {\n}\n\n/**\n * So does this one, with types\n */\nfunction functionWithRestAndType(...someParams: number) {\n}\n\n// FUNCTION TYPES\n\n/**\n * This is an async method\n */\nasync function foo() { }\n\nexport default multiply;\n\n/**\n * This function returns the number one.\n * @returns {Number} numberone\n */\nmodule.exports = () => (<p>hello</p>);\n\n/**\n * This tests our support of optional parameters in ES6\n */\nfunction veryImportantTransform(foo = 'bar') {\n return \"42\";\n}\n\n// ACCESS LEVELS\n\n/**\n * A private function\n * @private\n */\nfunction iAmPrivate() { }\n\n/**\n * A protected function\n * @protected\n */\nfunction iAmProtected() { }\n\n/**\n * A public function\n * @public\n */\nfunction iAmPublic() { }\n\n/**\n * A private function using the access tag\n * @access private\n */\nfunction iAmAccessPrivate() { }\n\n/**\n * This is re-exported\n */\nexport { execute } from 'external-module';\n"
},
"errors": [],
"access": "protected",
"name": "iAmProtected",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
{
"name": "iAmProtected",
"kind": "function"
}
],
"namespace": "iAmProtected"
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "A public function",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 18,
"offset": 17
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 18,
"offset": 17
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 18,
"offset": 17
}
}
},
"tags": [
{
"title": "public",
"description": null,
"lineNumber": 2
}
],
"loc": {
"start": {
"line": 109,
"column": 0
},
"end": {
"line": 112,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 113,
"column": 0
},
"end": {
"line": 113,
"column": 24
}
},
"code": "/**\n * This function destructures with defaults.\n */\nfunction destructure({phoneNumbers = [], emailAddresses = [], ...params} = {}) {\n}\n\n/**\n * Similar, but with an array\n */\nfunction destructure([a, b, c]) {\n}\n\n/**\n * This function returns the number one.\n * @param {Array<Number>} a an array of numbers\n * @returns {Number} numberone\n */\nvar multiply = (a, b) => a * b;\n\n/**\n * This is a sink\n */\nclass Sink {\n /**\n * This is a property of the sink.\n */\n staticProp = 42;\n\n /**\n * Is it empty\n */\n empty() {\n return 1;\n }\n\n /**\n * This method says hello\n */\n static hello() {\n return 'hello';\n }\n\n /**\n * This is a getter method: it should be documented\n * as a property.\n */\n get aGetter() {\n return 42;\n }\n\n /**\n * @param {number} height the height of the thing\n * @param {number} width the width of the thing\n */\n constructor(height, width) {\n this.height = height;\n this.width = width;\n }\n}\n\n/**\n * This function takes rest params\n */\nfunction functionWithRest(...someParams) {\n}\n\n/**\n * So does this one, with types\n */\nfunction functionWithRestAndType(...someParams: number) {\n}\n\n// FUNCTION TYPES\n\n/**\n * This is an async method\n */\nasync function foo() { }\n\nexport default multiply;\n\n/**\n * This function returns the number one.\n * @returns {Number} numberone\n */\nmodule.exports = () => (<p>hello</p>);\n\n/**\n * This tests our support of optional parameters in ES6\n */\nfunction veryImportantTransform(foo = 'bar') {\n return \"42\";\n}\n\n// ACCESS LEVELS\n\n/**\n * A private function\n * @private\n */\nfunction iAmPrivate() { }\n\n/**\n * A protected function\n * @protected\n */\nfunction iAmProtected() { }\n\n/**\n * A public function\n * @public\n */\nfunction iAmPublic() { }\n\n/**\n * A private function using the access tag\n * @access private\n */\nfunction iAmAccessPrivate() { }\n\n/**\n * This is re-exported\n */\nexport { execute } from 'external-module';\n"
},
"errors": [],
"access": "public",
"name": "iAmPublic",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
{
"name": "iAmPublic",
"kind": "function"
}
],
"namespace": "iAmPublic"
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This is re-exported",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
}
}
},
"tags": [],
"loc": {
"start": {
"line": 121,
"column": 0
},
"end": {
"line": 123,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 124,
"column": 0
},
"end": {
"line": 124,
"column": 42
}
},
"code": "/**\n * This function destructures with defaults.\n */\nfunction destructure({phoneNumbers = [], emailAddresses = [], ...params} = {}) {\n}\n\n/**\n * Similar, but with an array\n */\nfunction destructure([a, b, c]) {\n}\n\n/**\n * This function returns the number one.\n * @param {Array<Number>} a an array of numbers\n * @returns {Number} numberone\n */\nvar multiply = (a, b) => a * b;\n\n/**\n * This is a sink\n */\nclass Sink {\n /**\n * This is a property of the sink.\n */\n staticProp = 42;\n\n /**\n * Is it empty\n */\n empty() {\n return 1;\n }\n\n /**\n * This method says hello\n */\n static hello() {\n return 'hello';\n }\n\n /**\n * This is a getter method: it should be documented\n * as a property.\n */\n get aGetter() {\n return 42;\n }\n\n /**\n * @param {number} height the height of the thing\n * @param {number} width the width of the thing\n */\n constructor(height, width) {\n this.height = height;\n this.width = width;\n }\n}\n\n/**\n * This function takes rest params\n */\nfunction functionWithRest(...someParams) {\n}\n\n/**\n * So does this one, with types\n */\nfunction functionWithRestAndType(...someParams: number) {\n}\n\n// FUNCTION TYPES\n\n/**\n * This is an async method\n */\nasync function foo() { }\n\nexport default multiply;\n\n/**\n * This function returns the number one.\n * @returns {Number} numberone\n */\nmodule.exports = () => (<p>hello</p>);\n\n/**\n * This tests our support of optional parameters in ES6\n */\nfunction veryImportantTransform(foo = 'bar') {\n return \"42\";\n}\n\n// ACCESS LEVELS\n\n/**\n * A private function\n * @private\n */\nfunction iAmPrivate() { }\n\n/**\n * A protected function\n * @protected\n */\nfunction iAmProtected() { }\n\n/**\n * A public function\n * @public\n */\nfunction iAmPublic() { }\n\n/**\n * A private function using the access tag\n * @access private\n */\nfunction iAmAccessPrivate() { }\n\n/**\n * This is re-exported\n */\nexport { execute } from 'external-module';\n"
},
"errors": [],
"name": "execute",
"members": {
"instance": [],
"static": []
},
"path": [
{
"name": "execute"
}
],
"namespace": "execute"
}
]

View File

@ -10,17 +10,6 @@ Returns **[Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refer
# destructure
Similar, but with an array
**Parameters**
- `$0` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array)**
- `$0.a`
- `$0.b`
- `$0.c`
# destructure
This function destructures with defaults.
**Parameters**
@ -30,17 +19,16 @@ This function destructures with defaults.
- `$0.emailAddresses` (optional, default `[]`)
- `$0.params` **...**
# iAmProtected
# destructure
A protected function
Similar, but with an array
# iAmPublic
**Parameters**
A public function
# execute
This is re-exported
- `$0` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array)**
- `$0.a`
- `$0.b`
- `$0.c`
# multiply
@ -48,7 +36,7 @@ This function returns the number one.
**Parameters**
- `a` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array).&lt;[Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)>** an array of numbers
- `a` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array)&lt;[Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)>** an array of numbers
- `b`
Returns **[Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** numberone
@ -114,3 +102,15 @@ This tests our support of optional parameters in ES6
**Parameters**
- `foo` (optional, default `'bar'`)
# iAmProtected
A protected function
# iAmPublic
A public function
# execute
This is re-exported

View File

@ -157,176 +157,6 @@
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Similar, but with an array",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 27,
"offset": 26
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 27,
"offset": 26
},
"indent": []
}
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Parameters"
}
]
},
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array",
"type": "link",
"children": [
{
"type": "text",
"value": "Array"
}
]
}
]
},
{
"type": "text",
"value": " "
}
]
},
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0.a"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0.b"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0.c"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
}
]
}
]
}
]
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "destructure"
}
]
},
{
"type": "paragraph",
"children": [
@ -553,7 +383,7 @@
"children": [
{
"type": "text",
"value": "iAmProtected"
"value": "destructure"
}
]
},
@ -562,7 +392,7 @@
"children": [
{
"type": "text",
"value": "A protected function",
"value": "Similar, but with an array",
"position": {
"start": {
"line": 1,
@ -571,8 +401,8 @@
},
"end": {
"line": 1,
"column": 21,
"offset": 20
"column": 27,
"offset": 26
},
"indent": []
}
@ -586,102 +416,137 @@
},
"end": {
"line": 1,
"column": 21,
"offset": 20
"column": 27,
"offset": 26
},
"indent": []
}
},
{
"depth": 1,
"type": "heading",
"type": "strong",
"children": [
{
"type": "text",
"value": "iAmPublic"
"value": "Parameters"
}
]
},
{
"type": "paragraph",
"ordered": false,
"type": "list",
"children": [
{
"type": "text",
"value": "A public function",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array",
"type": "link",
"children": [
{
"type": "text",
"value": "Array"
}
]
}
]
},
{
"type": "text",
"value": " "
}
]
},
"end": {
"line": 1,
"column": 18,
"offset": 17
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 18,
"offset": 17
},
"indent": []
}
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "execute"
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0.a"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0.b"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0.c"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
}
]
}
]
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This is re-exported",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
},
{
"depth": 1,
"type": "heading",
@ -770,7 +635,7 @@
},
{
"type": "text",
"value": ".<"
"value": "<"
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
@ -1765,6 +1630,141 @@
]
}
]
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "iAmProtected"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "A protected function",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "iAmPublic"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "A public function",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 18,
"offset": 17
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 18,
"offset": 17
},
"indent": []
}
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "execute"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This is re-exported",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
}
]
}

View File

@ -1,119 +1,4 @@
[
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Similar, but with an array",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 27,
"offset": 26
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 27,
"offset": 26
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 27,
"offset": 26
}
}
},
"tags": [],
"loc": {
"start": {
"line": 7,
"column": 0
},
"end": {
"line": 9,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 10,
"column": 0
},
"end": {
"line": 11,
"column": 1
}
},
"code": "/**\n * This function destructures with defaults.\n */\nfunction destructure({phoneNumbers = [], emailAddresses = [], ...params} = {}) {\n}\n\n/**\n * Similar, but with an array\n */\nfunction destructure([a, b, c]) {\n}\n\n/**\n * This function returns the number one.\n * @param {Array<Number>} a an array of numbers\n * @returns {Number} numberone\n */\nvar multiply = (a, b) => a * b;\n\n/**\n * This is a sink\n */\nclass Sink {\n /**\n * This is a property of the sink.\n */\n staticProp = 42;\n\n /**\n * Is it empty\n */\n empty() {\n return 1;\n }\n\n /**\n * This method says hello\n */\n static hello() {\n return 'hello';\n }\n\n /**\n * This is a getter method: it should be documented\n * as a property.\n */\n get aGetter() {\n return 42;\n }\n\n /**\n * @param {number} height the height of the thing\n * @param {number} width the width of the thing\n */\n constructor(height, width) {\n this.height = height;\n this.width = width;\n }\n}\n\n/**\n * This function takes rest params\n */\nfunction functionWithRest(...someParams) {\n}\n\n/**\n * So does this one, with types\n */\nfunction functionWithRestAndType(...someParams: number) {\n}\n\n// FUNCTION TYPES\n\n/**\n * This is an async method\n */\nasync function foo() { }\n\nexport default multiply;\n\n/**\n * This function returns the number one.\n * @returns {Number} numberone\n */\nmodule.exports = () => (<p>hello</p>);\n\n/**\n * This tests our support of optional parameters in ES6\n */\nfunction veryImportantTransform(foo = 'bar') {\n return \"42\";\n}\n\n// ACCESS LEVELS\n\n/**\n * A private function\n * @private\n */\nfunction iAmPrivate() { }\n\n/**\n * A protected function\n * @protected\n */\nfunction iAmProtected() { }\n\n/**\n * A public function\n * @public\n */\nfunction iAmPublic() { }\n\n/**\n * A private function using the access tag\n * @access private\n */\nfunction iAmAccessPrivate() { }\n\n/**\n * This is re-exported\n */\nexport { execute } from 'external-module';\n"
},
"errors": [],
"name": "destructure",
"kind": "function",
"params": [
{
"title": "param",
"name": "$0",
"type": {
"type": "NameExpression",
"name": "Array"
},
"properties": [
{
"title": "param",
"name": "$0.a",
"lineNumber": 10
},
{
"title": "param",
"name": "$0.b",
"lineNumber": 10
},
{
"title": "param",
"name": "$0.c",
"lineNumber": 10
}
]
}
],
"members": {
"instance": [],
"static": []
},
"path": [
"destructure"
]
},
{
"description": {
"type": "root",
@ -230,103 +115,12 @@
"static": []
},
"path": [
"destructure"
]
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "A protected function",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
}
}
},
"tags": [
{
"title": "protected",
"description": null,
"lineNumber": 2
"name": "destructure",
"kind": "function"
}
],
"loc": {
"start": {
"line": 103,
"column": 0
},
"end": {
"line": 106,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 107,
"column": 0
},
"end": {
"line": 107,
"column": 27
}
},
"code": "/**\n * This function destructures with defaults.\n */\nfunction destructure({phoneNumbers = [], emailAddresses = [], ...params} = {}) {\n}\n\n/**\n * Similar, but with an array\n */\nfunction destructure([a, b, c]) {\n}\n\n/**\n * This function returns the number one.\n * @param {Array<Number>} a an array of numbers\n * @returns {Number} numberone\n */\nvar multiply = (a, b) => a * b;\n\n/**\n * This is a sink\n */\nclass Sink {\n /**\n * This is a property of the sink.\n */\n staticProp = 42;\n\n /**\n * Is it empty\n */\n empty() {\n return 1;\n }\n\n /**\n * This method says hello\n */\n static hello() {\n return 'hello';\n }\n\n /**\n * This is a getter method: it should be documented\n * as a property.\n */\n get aGetter() {\n return 42;\n }\n\n /**\n * @param {number} height the height of the thing\n * @param {number} width the width of the thing\n */\n constructor(height, width) {\n this.height = height;\n this.width = width;\n }\n}\n\n/**\n * This function takes rest params\n */\nfunction functionWithRest(...someParams) {\n}\n\n/**\n * So does this one, with types\n */\nfunction functionWithRestAndType(...someParams: number) {\n}\n\n// FUNCTION TYPES\n\n/**\n * This is an async method\n */\nasync function foo() { }\n\nexport default multiply;\n\n/**\n * This function returns the number one.\n * @returns {Number} numberone\n */\nmodule.exports = () => (<p>hello</p>);\n\n/**\n * This tests our support of optional parameters in ES6\n */\nfunction veryImportantTransform(foo = 'bar') {\n return \"42\";\n}\n\n// ACCESS LEVELS\n\n/**\n * A private function\n * @private\n */\nfunction iAmPrivate() { }\n\n/**\n * A protected function\n * @protected\n */\nfunction iAmProtected() { }\n\n/**\n * A public function\n * @public\n */\nfunction iAmPublic() { }\n\n/**\n * A private function using the access tag\n * @access private\n */\nfunction iAmAccessPrivate() { }\n\n/**\n * This is re-exported\n */\nexport { execute } from 'external-module';\n"
},
"errors": [],
"access": "protected",
"name": "iAmProtected",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
"iAmProtected"
]
"namespace": "destructure"
},
{
"description": {
@ -337,7 +131,7 @@
"children": [
{
"type": "text",
"value": "A public function",
"value": "Similar, but with an array",
"position": {
"start": {
"line": 1,
@ -346,8 +140,8 @@
},
"end": {
"line": 1,
"column": 18,
"offset": 17
"column": 27,
"offset": 26
},
"indent": []
}
@ -361,8 +155,8 @@
},
"end": {
"line": 1,
"column": 18,
"offset": 17
"column": 27,
"offset": 26
},
"indent": []
}
@ -376,139 +170,76 @@
},
"end": {
"line": 1,
"column": 18,
"offset": 17
}
}
},
"tags": [
{
"title": "public",
"description": null,
"lineNumber": 2
}
],
"loc": {
"start": {
"line": 109,
"column": 0
},
"end": {
"line": 112,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 113,
"column": 0
},
"end": {
"line": 113,
"column": 24
}
},
"code": "/**\n * This function destructures with defaults.\n */\nfunction destructure({phoneNumbers = [], emailAddresses = [], ...params} = {}) {\n}\n\n/**\n * Similar, but with an array\n */\nfunction destructure([a, b, c]) {\n}\n\n/**\n * This function returns the number one.\n * @param {Array<Number>} a an array of numbers\n * @returns {Number} numberone\n */\nvar multiply = (a, b) => a * b;\n\n/**\n * This is a sink\n */\nclass Sink {\n /**\n * This is a property of the sink.\n */\n staticProp = 42;\n\n /**\n * Is it empty\n */\n empty() {\n return 1;\n }\n\n /**\n * This method says hello\n */\n static hello() {\n return 'hello';\n }\n\n /**\n * This is a getter method: it should be documented\n * as a property.\n */\n get aGetter() {\n return 42;\n }\n\n /**\n * @param {number} height the height of the thing\n * @param {number} width the width of the thing\n */\n constructor(height, width) {\n this.height = height;\n this.width = width;\n }\n}\n\n/**\n * This function takes rest params\n */\nfunction functionWithRest(...someParams) {\n}\n\n/**\n * So does this one, with types\n */\nfunction functionWithRestAndType(...someParams: number) {\n}\n\n// FUNCTION TYPES\n\n/**\n * This is an async method\n */\nasync function foo() { }\n\nexport default multiply;\n\n/**\n * This function returns the number one.\n * @returns {Number} numberone\n */\nmodule.exports = () => (<p>hello</p>);\n\n/**\n * This tests our support of optional parameters in ES6\n */\nfunction veryImportantTransform(foo = 'bar') {\n return \"42\";\n}\n\n// ACCESS LEVELS\n\n/**\n * A private function\n * @private\n */\nfunction iAmPrivate() { }\n\n/**\n * A protected function\n * @protected\n */\nfunction iAmProtected() { }\n\n/**\n * A public function\n * @public\n */\nfunction iAmPublic() { }\n\n/**\n * A private function using the access tag\n * @access private\n */\nfunction iAmAccessPrivate() { }\n\n/**\n * This is re-exported\n */\nexport { execute } from 'external-module';\n"
},
"errors": [],
"access": "public",
"name": "iAmPublic",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
"iAmPublic"
]
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This is re-exported",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
"column": 27,
"offset": 26
}
}
},
"tags": [],
"loc": {
"start": {
"line": 121,
"line": 7,
"column": 0
},
"end": {
"line": 123,
"line": 9,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 124,
"line": 10,
"column": 0
},
"end": {
"line": 124,
"column": 42
"line": 11,
"column": 1
}
},
"code": "/**\n * This function destructures with defaults.\n */\nfunction destructure({phoneNumbers = [], emailAddresses = [], ...params} = {}) {\n}\n\n/**\n * Similar, but with an array\n */\nfunction destructure([a, b, c]) {\n}\n\n/**\n * This function returns the number one.\n * @param {Array<Number>} a an array of numbers\n * @returns {Number} numberone\n */\nvar multiply = (a, b) => a * b;\n\n/**\n * This is a sink\n */\nclass Sink {\n /**\n * This is a property of the sink.\n */\n staticProp = 42;\n\n /**\n * Is it empty\n */\n empty() {\n return 1;\n }\n\n /**\n * This method says hello\n */\n static hello() {\n return 'hello';\n }\n\n /**\n * This is a getter method: it should be documented\n * as a property.\n */\n get aGetter() {\n return 42;\n }\n\n /**\n * @param {number} height the height of the thing\n * @param {number} width the width of the thing\n */\n constructor(height, width) {\n this.height = height;\n this.width = width;\n }\n}\n\n/**\n * This function takes rest params\n */\nfunction functionWithRest(...someParams) {\n}\n\n/**\n * So does this one, with types\n */\nfunction functionWithRestAndType(...someParams: number) {\n}\n\n// FUNCTION TYPES\n\n/**\n * This is an async method\n */\nasync function foo() { }\n\nexport default multiply;\n\n/**\n * This function returns the number one.\n * @returns {Number} numberone\n */\nmodule.exports = () => (<p>hello</p>);\n\n/**\n * This tests our support of optional parameters in ES6\n */\nfunction veryImportantTransform(foo = 'bar') {\n return \"42\";\n}\n\n// ACCESS LEVELS\n\n/**\n * A private function\n * @private\n */\nfunction iAmPrivate() { }\n\n/**\n * A protected function\n * @protected\n */\nfunction iAmProtected() { }\n\n/**\n * A public function\n * @public\n */\nfunction iAmPublic() { }\n\n/**\n * A private function using the access tag\n * @access private\n */\nfunction iAmAccessPrivate() { }\n\n/**\n * This is re-exported\n */\nexport { execute } from 'external-module';\n"
},
"errors": [],
"name": "execute",
"name": "destructure",
"kind": "function",
"params": [
{
"title": "param",
"name": "$0",
"type": {
"type": "NameExpression",
"name": "Array"
},
"properties": [
{
"title": "param",
"name": "$0.a",
"lineNumber": 10
},
{
"title": "param",
"name": "$0.b",
"lineNumber": 10
},
{
"title": "param",
"name": "$0.c",
"lineNumber": 10
}
]
}
],
"members": {
"instance": [],
"static": []
},
"path": [
"execute"
]
{
"name": "destructure",
"kind": "function"
}
],
"namespace": "destructure"
},
{
"description": {
@ -760,8 +491,12 @@
"static": []
},
"path": [
"multiply"
]
{
"name": "multiply",
"kind": "function"
}
],
"namespace": "multiply"
},
{
"description": {
@ -932,9 +667,17 @@
"static": []
},
"path": [
"Sink",
"empty"
]
{
"name": "Sink",
"kind": "class"
},
{
"name": "empty",
"kind": "function",
"scope": "instance"
}
],
"namespace": "Sink#empty"
},
{
"description": {
@ -1027,9 +770,17 @@
"static": []
},
"path": [
"Sink",
"aGetter"
]
{
"name": "Sink",
"kind": "class"
},
{
"name": "aGetter",
"kind": "member",
"scope": "instance"
}
],
"namespace": "Sink#aGetter"
},
{
"description": "",
@ -1210,9 +961,17 @@
"static": []
},
"path": [
"Sink",
"constructor"
]
{
"name": "Sink",
"kind": "class"
},
{
"name": "constructor",
"kind": "function",
"scope": "instance"
}
],
"namespace": "Sink#constructor"
}
],
"static": [
@ -1303,15 +1062,28 @@
"static": []
},
"path": [
"Sink",
"hello"
]
{
"name": "Sink",
"kind": "class"
},
{
"name": "hello",
"kind": "function",
"scope": "static"
}
],
"namespace": "Sink.hello"
}
]
],
"events": []
},
"path": [
"Sink"
]
{
"name": "Sink",
"kind": "class"
}
],
"namespace": "Sink"
},
{
"description": {
@ -1397,8 +1169,11 @@
"static": []
},
"path": [
"staticProp"
]
{
"name": "staticProp"
}
],
"namespace": "staticProp"
},
{
"description": {
@ -1495,8 +1270,12 @@
"static": []
},
"path": [
"functionWithRest"
]
{
"name": "functionWithRest",
"kind": "function"
}
],
"namespace": "functionWithRest"
},
{
"description": {
@ -1597,8 +1376,12 @@
"static": []
},
"path": [
"functionWithRestAndType"
]
{
"name": "functionWithRestAndType",
"kind": "function"
}
],
"namespace": "functionWithRestAndType"
},
{
"description": {
@ -1685,8 +1468,12 @@
"static": []
},
"path": [
"foo"
]
{
"name": "foo",
"kind": "function"
}
],
"namespace": "foo"
},
{
"description": {
@ -1843,8 +1630,12 @@
"static": []
},
"path": [
"es6.input"
]
{
"name": "es6.input",
"kind": "function"
}
],
"namespace": "es6.input"
},
{
"description": {
@ -1938,7 +1729,299 @@
"static": []
},
"path": [
"veryImportantTransform"
]
{
"name": "veryImportantTransform",
"kind": "function"
}
],
"namespace": "veryImportantTransform"
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "A protected function",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
}
}
},
"tags": [
{
"title": "protected",
"description": null,
"lineNumber": 2
}
],
"loc": {
"start": {
"line": 103,
"column": 0
},
"end": {
"line": 106,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 107,
"column": 0
},
"end": {
"line": 107,
"column": 27
}
},
"code": "/**\n * This function destructures with defaults.\n */\nfunction destructure({phoneNumbers = [], emailAddresses = [], ...params} = {}) {\n}\n\n/**\n * Similar, but with an array\n */\nfunction destructure([a, b, c]) {\n}\n\n/**\n * This function returns the number one.\n * @param {Array<Number>} a an array of numbers\n * @returns {Number} numberone\n */\nvar multiply = (a, b) => a * b;\n\n/**\n * This is a sink\n */\nclass Sink {\n /**\n * This is a property of the sink.\n */\n staticProp = 42;\n\n /**\n * Is it empty\n */\n empty() {\n return 1;\n }\n\n /**\n * This method says hello\n */\n static hello() {\n return 'hello';\n }\n\n /**\n * This is a getter method: it should be documented\n * as a property.\n */\n get aGetter() {\n return 42;\n }\n\n /**\n * @param {number} height the height of the thing\n * @param {number} width the width of the thing\n */\n constructor(height, width) {\n this.height = height;\n this.width = width;\n }\n}\n\n/**\n * This function takes rest params\n */\nfunction functionWithRest(...someParams) {\n}\n\n/**\n * So does this one, with types\n */\nfunction functionWithRestAndType(...someParams: number) {\n}\n\n// FUNCTION TYPES\n\n/**\n * This is an async method\n */\nasync function foo() { }\n\nexport default multiply;\n\n/**\n * This function returns the number one.\n * @returns {Number} numberone\n */\nmodule.exports = () => (<p>hello</p>);\n\n/**\n * This tests our support of optional parameters in ES6\n */\nfunction veryImportantTransform(foo = 'bar') {\n return \"42\";\n}\n\n// ACCESS LEVELS\n\n/**\n * A private function\n * @private\n */\nfunction iAmPrivate() { }\n\n/**\n * A protected function\n * @protected\n */\nfunction iAmProtected() { }\n\n/**\n * A public function\n * @public\n */\nfunction iAmPublic() { }\n\n/**\n * A private function using the access tag\n * @access private\n */\nfunction iAmAccessPrivate() { }\n\n/**\n * This is re-exported\n */\nexport { execute } from 'external-module';\n"
},
"errors": [],
"access": "protected",
"name": "iAmProtected",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
{
"name": "iAmProtected",
"kind": "function"
}
],
"namespace": "iAmProtected"
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "A public function",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 18,
"offset": 17
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 18,
"offset": 17
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 18,
"offset": 17
}
}
},
"tags": [
{
"title": "public",
"description": null,
"lineNumber": 2
}
],
"loc": {
"start": {
"line": 109,
"column": 0
},
"end": {
"line": 112,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 113,
"column": 0
},
"end": {
"line": 113,
"column": 24
}
},
"code": "/**\n * This function destructures with defaults.\n */\nfunction destructure({phoneNumbers = [], emailAddresses = [], ...params} = {}) {\n}\n\n/**\n * Similar, but with an array\n */\nfunction destructure([a, b, c]) {\n}\n\n/**\n * This function returns the number one.\n * @param {Array<Number>} a an array of numbers\n * @returns {Number} numberone\n */\nvar multiply = (a, b) => a * b;\n\n/**\n * This is a sink\n */\nclass Sink {\n /**\n * This is a property of the sink.\n */\n staticProp = 42;\n\n /**\n * Is it empty\n */\n empty() {\n return 1;\n }\n\n /**\n * This method says hello\n */\n static hello() {\n return 'hello';\n }\n\n /**\n * This is a getter method: it should be documented\n * as a property.\n */\n get aGetter() {\n return 42;\n }\n\n /**\n * @param {number} height the height of the thing\n * @param {number} width the width of the thing\n */\n constructor(height, width) {\n this.height = height;\n this.width = width;\n }\n}\n\n/**\n * This function takes rest params\n */\nfunction functionWithRest(...someParams) {\n}\n\n/**\n * So does this one, with types\n */\nfunction functionWithRestAndType(...someParams: number) {\n}\n\n// FUNCTION TYPES\n\n/**\n * This is an async method\n */\nasync function foo() { }\n\nexport default multiply;\n\n/**\n * This function returns the number one.\n * @returns {Number} numberone\n */\nmodule.exports = () => (<p>hello</p>);\n\n/**\n * This tests our support of optional parameters in ES6\n */\nfunction veryImportantTransform(foo = 'bar') {\n return \"42\";\n}\n\n// ACCESS LEVELS\n\n/**\n * A private function\n * @private\n */\nfunction iAmPrivate() { }\n\n/**\n * A protected function\n * @protected\n */\nfunction iAmProtected() { }\n\n/**\n * A public function\n * @public\n */\nfunction iAmPublic() { }\n\n/**\n * A private function using the access tag\n * @access private\n */\nfunction iAmAccessPrivate() { }\n\n/**\n * This is re-exported\n */\nexport { execute } from 'external-module';\n"
},
"errors": [],
"access": "public",
"name": "iAmPublic",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
{
"name": "iAmPublic",
"kind": "function"
}
],
"namespace": "iAmPublic"
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This is re-exported",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
}
}
},
"tags": [],
"loc": {
"start": {
"line": 121,
"column": 0
},
"end": {
"line": 123,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 124,
"column": 0
},
"end": {
"line": 124,
"column": 42
}
},
"code": "/**\n * This function destructures with defaults.\n */\nfunction destructure({phoneNumbers = [], emailAddresses = [], ...params} = {}) {\n}\n\n/**\n * Similar, but with an array\n */\nfunction destructure([a, b, c]) {\n}\n\n/**\n * This function returns the number one.\n * @param {Array<Number>} a an array of numbers\n * @returns {Number} numberone\n */\nvar multiply = (a, b) => a * b;\n\n/**\n * This is a sink\n */\nclass Sink {\n /**\n * This is a property of the sink.\n */\n staticProp = 42;\n\n /**\n * Is it empty\n */\n empty() {\n return 1;\n }\n\n /**\n * This method says hello\n */\n static hello() {\n return 'hello';\n }\n\n /**\n * This is a getter method: it should be documented\n * as a property.\n */\n get aGetter() {\n return 42;\n }\n\n /**\n * @param {number} height the height of the thing\n * @param {number} width the width of the thing\n */\n constructor(height, width) {\n this.height = height;\n this.width = width;\n }\n}\n\n/**\n * This function takes rest params\n */\nfunction functionWithRest(...someParams) {\n}\n\n/**\n * So does this one, with types\n */\nfunction functionWithRestAndType(...someParams: number) {\n}\n\n// FUNCTION TYPES\n\n/**\n * This is an async method\n */\nasync function foo() { }\n\nexport default multiply;\n\n/**\n * This function returns the number one.\n * @returns {Number} numberone\n */\nmodule.exports = () => (<p>hello</p>);\n\n/**\n * This tests our support of optional parameters in ES6\n */\nfunction veryImportantTransform(foo = 'bar') {\n return \"42\";\n}\n\n// ACCESS LEVELS\n\n/**\n * A private function\n * @private\n */\nfunction iAmPrivate() { }\n\n/**\n * A protected function\n * @protected\n */\nfunction iAmProtected() { }\n\n/**\n * A public function\n * @public\n */\nfunction iAmPublic() { }\n\n/**\n * A private function using the access tag\n * @access private\n */\nfunction iAmAccessPrivate() { }\n\n/**\n * This is re-exported\n */\nexport { execute } from 'external-module';\n"
},
"errors": [],
"name": "execute",
"members": {
"instance": [],
"static": []
},
"path": [
{
"name": "execute"
}
],
"namespace": "execute"
}
]

View File

@ -1,16 +1,5 @@
# destructure
Similar, but with an array
**Parameters**
- `$0` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array)**
- `$0.a`
- `$0.b`
- `$0.c`
# destructure
This function destructures with defaults.
**Parameters**
@ -20,17 +9,16 @@ This function destructures with defaults.
- `$0.emailAddresses` (optional, default `[]`)
- `$0.params` **...**
# iAmProtected
# destructure
A protected function
Similar, but with an array
# iAmPublic
**Parameters**
A public function
# execute
This is re-exported
- `$0` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array)**
- `$0.a`
- `$0.b`
- `$0.c`
# multiply
@ -38,7 +26,7 @@ This function returns the number one.
**Parameters**
- `a` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array).&lt;[Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)>** an array of numbers
- `a` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array)&lt;[Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)>** an array of numbers
- `b`
Returns **[Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** numberone
@ -104,3 +92,15 @@ This tests our support of optional parameters in ES6
**Parameters**
- `foo` (optional, default `'bar'`)
# iAmProtected
A protected function
# iAmPublic
A public function
# execute
This is re-exported

View File

@ -1,176 +1,6 @@
{
"type": "root",
"children": [
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "destructure"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Similar, but with an array",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 27,
"offset": 26
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 27,
"offset": 26
},
"indent": []
}
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Parameters"
}
]
},
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array",
"type": "link",
"children": [
{
"type": "text",
"value": "Array"
}
]
}
]
},
{
"type": "text",
"value": " "
}
]
},
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0.a"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0.b"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0.c"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
}
]
}
]
}
]
},
{
"depth": 1,
"type": "heading",
@ -407,7 +237,7 @@
"children": [
{
"type": "text",
"value": "iAmProtected"
"value": "destructure"
}
]
},
@ -416,7 +246,7 @@
"children": [
{
"type": "text",
"value": "A protected function",
"value": "Similar, but with an array",
"position": {
"start": {
"line": 1,
@ -425,8 +255,8 @@
},
"end": {
"line": 1,
"column": 21,
"offset": 20
"column": 27,
"offset": 26
},
"indent": []
}
@ -440,102 +270,137 @@
},
"end": {
"line": 1,
"column": 21,
"offset": 20
"column": 27,
"offset": 26
},
"indent": []
}
},
{
"depth": 1,
"type": "heading",
"type": "strong",
"children": [
{
"type": "text",
"value": "iAmPublic"
"value": "Parameters"
}
]
},
{
"type": "paragraph",
"ordered": false,
"type": "list",
"children": [
{
"type": "text",
"value": "A public function",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array",
"type": "link",
"children": [
{
"type": "text",
"value": "Array"
}
]
}
]
},
{
"type": "text",
"value": " "
}
]
},
"end": {
"line": 1,
"column": 18,
"offset": 17
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 18,
"offset": 17
},
"indent": []
}
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "execute"
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0.a"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0.b"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$0.c"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
}
]
}
]
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This is re-exported",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
},
{
"depth": 1,
"type": "heading",
@ -624,7 +489,7 @@
},
{
"type": "text",
"value": ".<"
"value": "<"
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
@ -1619,6 +1484,141 @@
]
}
]
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "iAmProtected"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "A protected function",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "iAmPublic"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "A public function",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 18,
"offset": 17
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 18,
"offset": 17
},
"indent": []
}
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "execute"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This is re-exported",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 20,
"offset": 19
},
"indent": []
}
}
]
}

View File

@ -240,7 +240,11 @@
"static": []
},
"path": [
"Map#mousemove"
]
{
"name": "Map#mousemove",
"kind": "event"
}
],
"namespace": ".event:Map#mousemove"
}
]

View File

@ -217,7 +217,11 @@
"static": []
},
"path": [
"foo"
]
{
"name": "foo",
"kind": "function"
}
],
"namespace": "foo"
}
]

View File

@ -118,7 +118,11 @@
"static": []
},
"path": [
"foo"
]
{
"name": "foo",
"kind": "function"
}
],
"namespace": "foo"
}
]

View File

@ -1,56 +1,4 @@
[
{
"description": "",
"tags": [
{
"title": "class",
"description": null,
"lineNumber": 1,
"type": null,
"name": "area"
}
],
"loc": {
"start": {
"line": 7,
"column": 2
},
"end": {
"line": 9,
"column": 5
}
},
"context": {
"loc": {
"start": {
"line": 10,
"column": 2
},
"end": {
"line": 11,
"column": 4
}
},
"code": "/**\n * an area chart generator\n * @returns {area} chart\n */\nvar area = function() {\n\n /**\n * @class area\n */\n var chart = function(selection) {\n };\n\n /**\n * Sets the chart data.\n * @function\n */\n chart.data = function(_) {\n };\n\n return chart;\n};\n"
},
"errors": [],
"kind": "class",
"name": "area",
"params": [
{
"title": "param",
"name": "selection",
"lineNumber": 10
}
],
"members": {
"instance": [],
"static": []
},
"path": [
"area"
]
},
{
"description": {
"type": "root",
@ -206,8 +154,68 @@
"static": []
},
"path": [
"area"
]
{
"name": "area",
"kind": "function"
}
],
"namespace": "area"
},
{
"description": "",
"tags": [
{
"title": "class",
"description": null,
"lineNumber": 1,
"type": null,
"name": "area"
}
],
"loc": {
"start": {
"line": 7,
"column": 2
},
"end": {
"line": 9,
"column": 5
}
},
"context": {
"loc": {
"start": {
"line": 10,
"column": 2
},
"end": {
"line": 11,
"column": 4
}
},
"code": "/**\n * an area chart generator\n * @returns {area} chart\n */\nvar area = function() {\n\n /**\n * @class area\n */\n var chart = function(selection) {\n };\n\n /**\n * Sets the chart data.\n * @function\n */\n chart.data = function(_) {\n };\n\n return chart;\n};\n"
},
"errors": [],
"kind": "class",
"name": "area",
"params": [
{
"title": "param",
"name": "selection",
"lineNumber": 10
}
],
"members": {
"instance": [],
"static": []
},
"path": [
{
"name": "area",
"kind": "class"
}
],
"namespace": "area"
},
{
"description": {
@ -315,7 +323,12 @@
"static": []
},
"path": [
"data"
]
{
"name": "data",
"kind": "function",
"scope": "static"
}
],
"namespace": ".data"
}
]

View File

@ -1,15 +1,15 @@
# area
**Parameters**
- `selection`
# area
an area chart generator
Returns **area** chart
# area
**Parameters**
- `selection`
# data
Sets the chart data.

View File

@ -1,53 +1,6 @@
{
"type": "root",
"children": [
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "area"
}
]
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Parameters"
}
]
},
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "selection"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
}
]
},
{
"depth": 1,
"type": "heading",
@ -150,6 +103,53 @@
}
]
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "area"
}
]
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Parameters"
}
]
},
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "selection"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
}
]
},
{
"depth": 1,
"type": "heading",

View File

@ -1,4 +1,172 @@
[
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This function returns the number one.",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
}
}
},
"tags": [],
"loc": {
"start": {
"line": 1,
"column": 0
},
"end": {
"line": 3,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 4,
"column": 0
},
"end": {
"line": 6,
"column": 1
}
},
"code": "/**\n * This function returns the number one.\n */\nfunction addThem(a: Point, b: string, c: ?boolean, d: Array<number>, e: Object, f: Named): number {\n return a + b + c + d + e;\n}\n\n/**\n * A 2D point.\n *\n * @property {number} x this is a prop\n */\ntype Point = {\n x: number,\n y: number,\n rgb: {\n hex: string\n },\n props: {\n radius: {\n x: number\n }\n }\n};\n\n/**\n * A type with entirely derived properties\n */\ntype Two = {\n x: number,\n y: number\n};\n\n/**\n * Just an alias for an array of strings\n */\ntype T = Array<string>;\n\n/**\n * Very Important Transform\n */\nfunction veryImportantTransform(\n input: Array<string>,\n options: Object = {}\n): string {\n return \"42\";\n}\n"
},
"errors": [],
"name": "addThem",
"kind": "function",
"params": [
{
"title": "param",
"name": "a",
"lineNumber": 4,
"type": {
"type": "NameExpression",
"name": "Point"
}
},
{
"title": "param",
"name": "b",
"lineNumber": 4,
"type": {
"type": "NameExpression",
"name": "string"
}
},
{
"title": "param",
"name": "c",
"lineNumber": 4,
"type": {
"type": "OptionalType",
"expression": {
"type": "NameExpression",
"name": "boolean"
}
}
},
{
"title": "param",
"name": "d",
"lineNumber": 4,
"type": {
"type": "TypeApplication",
"expression": {
"type": "NameExpression",
"name": "Array"
},
"applications": [
{
"type": "NameExpression",
"name": "number"
}
]
}
},
{
"title": "param",
"name": "e",
"lineNumber": 4,
"type": {
"type": "NameExpression",
"name": "Object"
}
},
{
"title": "param",
"name": "f",
"lineNumber": 4,
"type": {
"type": "NameExpression",
"name": "Named"
}
}
],
"returns": [
{
"type": {
"type": "NameExpression",
"name": "number"
}
}
],
"members": {
"instance": [],
"static": []
},
"path": [
{
"name": "addThem",
"kind": "function"
}
],
"namespace": "addThem"
},
{
"description": {
"type": "root",
@ -217,8 +385,12 @@
"static": []
},
"path": [
"Point"
]
{
"name": "Point",
"kind": "typedef"
}
],
"namespace": "Point"
},
{
"description": {
@ -325,8 +497,12 @@
"static": []
},
"path": [
"Two"
]
{
"name": "Two",
"kind": "typedef"
}
],
"namespace": "Two"
},
{
"description": {
@ -413,172 +589,12 @@
"static": []
},
"path": [
"T"
]
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This function returns the number one.",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
}
}
},
"tags": [],
"loc": {
"start": {
"line": 1,
"column": 0
},
"end": {
"line": 3,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 4,
"column": 0
},
"end": {
"line": 6,
"column": 1
}
},
"code": "/**\n * This function returns the number one.\n */\nfunction addThem(a: Point, b: string, c: ?boolean, d: Array<number>, e: Object, f: Named): number {\n return a + b + c + d + e;\n}\n\n/**\n * A 2D point.\n *\n * @property {number} x this is a prop\n */\ntype Point = {\n x: number,\n y: number,\n rgb: {\n hex: string\n },\n props: {\n radius: {\n x: number\n }\n }\n};\n\n/**\n * A type with entirely derived properties\n */\ntype Two = {\n x: number,\n y: number\n};\n\n/**\n * Just an alias for an array of strings\n */\ntype T = Array<string>;\n\n/**\n * Very Important Transform\n */\nfunction veryImportantTransform(\n input: Array<string>,\n options: Object = {}\n): string {\n return \"42\";\n}\n"
},
"errors": [],
"name": "addThem",
"kind": "function",
"params": [
{
"title": "param",
"name": "a",
"lineNumber": 4,
"type": {
"type": "NameExpression",
"name": "Point"
}
},
{
"title": "param",
"name": "b",
"lineNumber": 4,
"type": {
"type": "NameExpression",
"name": "string"
}
},
{
"title": "param",
"name": "c",
"lineNumber": 4,
"type": {
"type": "OptionalType",
"expression": {
"type": "NameExpression",
"name": "boolean"
}
}
},
{
"title": "param",
"name": "d",
"lineNumber": 4,
"type": {
"type": "TypeApplication",
"expression": {
"type": "NameExpression",
"name": "Array"
},
"applications": [
{
"type": "NameExpression",
"name": "number"
}
]
}
},
{
"title": "param",
"name": "e",
"lineNumber": 4,
"type": {
"type": "NameExpression",
"name": "Object"
}
},
{
"title": "param",
"name": "f",
"lineNumber": 4,
"type": {
"type": "NameExpression",
"name": "Named"
}
"name": "T",
"kind": "typedef"
}
],
"returns": [
{
"type": {
"type": "NameExpression",
"name": "number"
}
}
],
"members": {
"instance": [],
"static": []
},
"path": [
"addThem"
]
"namespace": "T"
},
{
"description": {
@ -705,7 +721,11 @@
"static": []
},
"path": [
"veryImportantTransform"
]
{
"name": "veryImportantTransform",
"kind": "function"
}
],
"namespace": "veryImportantTransform"
}
]

View File

@ -1,3 +1,18 @@
# addThem
This function returns the number one.
**Parameters**
- `a` **Point**
- `b` **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)**
- `c` **\[[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)]**
- `d` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array)&lt;[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)>**
- `e` **[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)**
- `f` **Named**
Returns **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)**
# Point
A 2D point.
@ -25,28 +40,13 @@ A type with entirely derived properties
Just an alias for an array of strings
# addThem
This function returns the number one.
**Parameters**
- `a` **Point**
- `b` **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)**
- `c` **[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)=**
- `d` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array).&lt;[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)>**
- `e` **[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)**
- `f` **Named**
Returns **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)**
# veryImportantTransform
Very Important Transform
**Parameters**
- `input` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array).&lt;[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)>**
- `options` **[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)=** (optional, default `{}`)
- `input` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array)&lt;[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)>**
- `options` **\[[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)]** (optional, default `{}`)
Returns **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)**

View File

@ -1,6 +1,336 @@
{
"type": "root",
"children": [
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "addThem"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This function returns the number one.",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Parameters"
}
]
},
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "a"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Point"
}
]
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "b"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String",
"type": "link",
"children": [
{
"type": "text",
"value": "string"
}
]
}
]
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "c"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "["
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean",
"type": "link",
"children": [
{
"type": "text",
"value": "boolean"
}
]
},
{
"type": "text",
"value": "]"
}
]
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "d"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array",
"type": "link",
"children": [
{
"type": "text",
"value": "Array"
}
]
},
{
"type": "text",
"value": "<"
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"type": "link",
"children": [
{
"type": "text",
"value": "number"
}
]
},
{
"type": "text",
"value": ">"
}
]
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "e"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object",
"type": "link",
"children": [
{
"type": "text",
"value": "Object"
}
]
}
]
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "f"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Named"
}
]
},
{
"type": "text",
"value": " "
}
]
}
]
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Returns "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"type": "link",
"children": [
{
"type": "text",
"value": "number"
}
]
}
]
},
{
"type": "text",
"value": " "
}
]
},
{
"depth": 1,
"type": "heading",
@ -561,332 +891,6 @@
"indent": []
}
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "addThem"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This function returns the number one.",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Parameters"
}
]
},
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "a"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Point"
}
]
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "b"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String",
"type": "link",
"children": [
{
"type": "text",
"value": "string"
}
]
}
]
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "c"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean",
"type": "link",
"children": [
{
"type": "text",
"value": "boolean"
}
]
},
{
"type": "text",
"value": "="
}
]
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "d"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array",
"type": "link",
"children": [
{
"type": "text",
"value": "Array"
}
]
},
{
"type": "text",
"value": ".<"
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"type": "link",
"children": [
{
"type": "text",
"value": "number"
}
]
},
{
"type": "text",
"value": ">"
}
]
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "e"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object",
"type": "link",
"children": [
{
"type": "text",
"value": "Object"
}
]
}
]
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "f"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Named"
}
]
},
{
"type": "text",
"value": " "
}
]
}
]
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Returns "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"type": "link",
"children": [
{
"type": "text",
"value": "number"
}
]
}
]
},
{
"type": "text",
"value": " "
}
]
},
{
"depth": 1,
"type": "heading",
@ -975,7 +979,7 @@
},
{
"type": "text",
"value": ".<"
"value": "<"
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String",
@ -1019,6 +1023,10 @@
{
"type": "strong",
"children": [
{
"type": "text",
"value": "["
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object",
@ -1032,7 +1040,7 @@
},
{
"type": "text",
"value": "="
"value": "]"
}
]
},

File diff suppressed because it is too large Load Diff

View File

@ -1,62 +1,4 @@
[
{
"description": "",
"tags": [
{
"title": "class",
"description": null,
"lineNumber": 0,
"type": null,
"name": "Foo"
}
],
"loc": {
"start": {
"line": 9,
"column": 0
},
"end": {
"line": 9,
"column": 17
}
},
"context": {
"loc": {
"start": {
"line": 10,
"column": 0
},
"end": {
"line": 10,
"column": 43
}
},
"code": "/**\n * With ES6, built-in types are extensible!\n */\nclass SpecialArray extends Array {\n additionalMethod() {\n }\n}\n\n/** @class Foo */\nmodule.exports = class Foo extends Bar { };\n"
},
"errors": [
{
"message": "@memberof reference to module not found",
"commentLineNumber": 0
}
],
"kind": "class",
"name": "Foo",
"augments": [
{
"title": "augments",
"name": "Bar"
}
],
"memberof": "module",
"scope": "static",
"members": {
"instance": [],
"static": []
},
"path": [
"Foo"
]
},
{
"description": {
"type": "root",
@ -148,7 +90,74 @@
"static": []
},
"path": [
"SpecialArray"
]
{
"name": "SpecialArray",
"kind": "class"
}
],
"namespace": "SpecialArray"
},
{
"description": "",
"tags": [
{
"title": "class",
"description": null,
"lineNumber": 0,
"type": null,
"name": "Foo"
}
],
"loc": {
"start": {
"line": 9,
"column": 0
},
"end": {
"line": 9,
"column": 17
}
},
"context": {
"loc": {
"start": {
"line": 10,
"column": 0
},
"end": {
"line": 10,
"column": 43
}
},
"code": "/**\n * With ES6, built-in types are extensible!\n */\nclass SpecialArray extends Array {\n additionalMethod() {\n }\n}\n\n/** @class Foo */\nmodule.exports = class Foo extends Bar { };\n"
},
"errors": [
{
"message": "@memberof reference to module not found",
"commentLineNumber": 0
}
],
"kind": "class",
"name": "Foo",
"augments": [
{
"title": "augments",
"name": "Bar"
}
],
"memberof": "module",
"scope": "static",
"members": {
"instance": [],
"static": []
},
"path": [
{
"name": "Foo",
"kind": "class",
"scope": "static"
}
],
"namespace": ".Foo"
}
]

View File

@ -1,9 +1,9 @@
# Foo
**Extends Bar**
# SpecialArray
**Extends Array**
With ES6, built-in types are extensible!
# Foo
**Extends Bar**

View File

@ -1,34 +1,6 @@
{
"type": "root",
"children": [
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "Foo"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Extends "
},
{
"type": "text",
"value": "Bar"
}
]
}
]
},
{
"depth": 1,
"type": "heading",
@ -91,6 +63,34 @@
},
"indent": []
}
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "Foo"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Extends "
},
{
"type": "text",
"value": "Bar"
}
]
}
]
}
]
}

View File

@ -1,4 +1,238 @@
[
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Adds one to a number",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
}
}
},
"tags": [
{
"title": "param",
"description": "the input",
"lineNumber": 2,
"type": {
"type": "NameExpression",
"name": "number"
},
"name": "a"
},
{
"title": "returns",
"description": "the output",
"lineNumber": 3,
"type": {
"type": "NameExpression",
"name": "number"
}
}
],
"loc": {
"start": {
"line": 1,
"column": 0
},
"end": {
"line": 5,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 6,
"column": 0
},
"end": {
"line": 8,
"column": 1
}
},
"code": "/**\n * Adds one to a number\n * @param {number} a the input\n * @returns {number} the output\n */\nfunction addOne(a) {\n return a + 1;\n}\n\n/**\n * This function returns the number one. Internally, this uses\n * {@link addOne} to do the math.\n * @param {number} a the input\n * @returns {number} numberone\n */\nmodule.exports = function (a) {\n return addOne(a);\n};\n"
},
"errors": [],
"params": [
{
"name": "a",
"lineNumber": 2,
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "the input",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
}
}
},
"type": {
"type": "NameExpression",
"name": "number"
}
}
],
"returns": [
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "the output",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 11,
"offset": 10
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 11,
"offset": 10
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 11,
"offset": 10
}
}
},
"type": {
"type": "NameExpression",
"name": "number"
}
}
],
"name": "addOne",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
{
"name": "addOne",
"kind": "function"
}
],
"namespace": "addOne"
},
{
"description": {
"type": "root",
@ -29,6 +263,7 @@
"type": "link",
"url": "addOne",
"title": null,
"jsdoc": true,
"children": [
{
"type": "text",
@ -271,237 +506,11 @@
"static": []
},
"path": [
"inline-link.input"
]
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Adds one to a number",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
}
}
},
"tags": [
{
"title": "param",
"description": "the input",
"lineNumber": 2,
"type": {
"type": "NameExpression",
"name": "number"
},
"name": "a"
},
{
"title": "returns",
"description": "the output",
"lineNumber": 3,
"type": {
"type": "NameExpression",
"name": "number"
}
"name": "inline-link.input",
"kind": "function"
}
],
"loc": {
"start": {
"line": 1,
"column": 0
},
"end": {
"line": 5,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 6,
"column": 0
},
"end": {
"line": 8,
"column": 1
}
},
"code": "/**\n * Adds one to a number\n * @param {number} a the input\n * @returns {number} the output\n */\nfunction addOne(a) {\n return a + 1;\n}\n\n/**\n * This function returns the number one. Internally, this uses\n * {@link addOne} to do the math.\n * @param {number} a the input\n * @returns {number} numberone\n */\nmodule.exports = function (a) {\n return addOne(a);\n};\n"
},
"errors": [],
"params": [
{
"name": "a",
"lineNumber": 2,
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "the input",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
}
}
},
"type": {
"type": "NameExpression",
"name": "number"
}
}
],
"returns": [
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "the output",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 11,
"offset": 10
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 11,
"offset": 10
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 11,
"offset": 10
}
}
},
"type": {
"type": "NameExpression",
"name": "number"
}
}
],
"name": "addOne",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
"addOne"
]
"namespace": "inline-link.input"
}
]

View File

@ -1,3 +1,13 @@
# addOne
Adds one to a number
**Parameters**
- `a` **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** the input
Returns **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** the output
# inline-link.input
This function returns the number one. Internally, this uses
@ -8,13 +18,3 @@ This function returns the number one. Internally, this uses
- `a` **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** the input
Returns **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** numberone
# addOne
Adds one to a number
**Parameters**
- `a` **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** the input
Returns **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** the output

View File

@ -1,6 +1,203 @@
{
"type": "root",
"children": [
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "addOne"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Adds one to a number",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Parameters"
}
]
},
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "a"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"type": "link",
"children": [
{
"type": "text",
"value": "number"
}
]
}
]
},
{
"type": "text",
"value": " "
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "the input",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
]
}
]
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Returns "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"type": "link",
"children": [
{
"type": "text",
"value": "number"
}
]
}
]
},
{
"type": "text",
"value": " "
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "the output",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 11,
"offset": 10
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 11,
"offset": 10
},
"indent": []
}
}
]
},
{
"depth": 1,
"type": "heading",
@ -37,6 +234,7 @@
"type": "link",
"url": "addOne",
"title": null,
"jsdoc": true,
"children": [
{
"type": "text",
@ -242,203 +440,6 @@
}
}
]
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "addOne"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Adds one to a number",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 21,
"offset": 20
},
"indent": []
}
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Parameters"
}
]
},
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "a"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"type": "link",
"children": [
{
"type": "text",
"value": "number"
}
]
}
]
},
{
"type": "text",
"value": " "
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "the input",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
]
}
]
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Returns "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"type": "link",
"children": [
{
"type": "text",
"value": "number"
}
]
}
]
},
{
"type": "text",
"value": " "
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "the output",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 11,
"offset": 10
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 11,
"offset": 10
},
"indent": []
}
}
]
}
]
}

View File

@ -118,7 +118,11 @@
"static": []
},
"path": [
"foo"
]
{
"name": "foo",
"kind": "function"
}
],
"namespace": "foo"
}
]

View File

@ -329,9 +329,17 @@
"static": []
},
"path": [
"MyClass",
"getFoo"
]
{
"name": "MyClass",
"kind": "class"
},
{
"name": "getFoo",
"kind": "function",
"scope": "instance"
}
],
"namespace": "MyClass#getFoo"
}
],
"static": [
@ -490,14 +498,27 @@
"static": []
},
"path": [
"MyClass",
"getUndefined"
]
{
"name": "MyClass",
"kind": "class"
},
{
"name": "getUndefined",
"kind": "function",
"scope": "static"
}
],
"namespace": "MyClass.getUndefined"
}
]
],
"events": []
},
"path": [
"MyClass"
]
{
"name": "MyClass",
"kind": "class"
}
],
"namespace": "MyClass"
}
]

View File

@ -257,7 +257,11 @@
"static": []
},
"path": [
"addFive"
]
{
"name": "addFive",
"kind": "function"
}
],
"namespace": "addFive"
}
]

View File

@ -173,7 +173,11 @@
"static": []
},
"path": [
"dewey"
]
{
"name": "dewey",
"kind": "function"
}
],
"namespace": "dewey"
}
]

View File

@ -338,7 +338,11 @@
"static": []
},
"path": [
"multiexample.input"
]
{
"name": "multiexample.input",
"kind": "function"
}
],
"namespace": "multiexample.input"
}
]

View File

@ -161,8 +161,12 @@
"static": []
},
"path": [
"getTheTime"
]
{
"name": "getTheTime",
"kind": "function"
}
],
"namespace": "getTheTime"
},
{
"description": {
@ -389,7 +393,11 @@
"static": []
},
"path": [
"getTheTime"
]
{
"name": "getTheTime",
"kind": "function"
}
],
"namespace": "getTheTime"
}
]

View File

@ -506,7 +506,11 @@
"static": []
},
"path": [
"sessions.create"
]
{
"name": "sessions.create",
"kind": "function"
}
],
"namespace": "sessions.create"
}
]

View File

@ -7,6 +7,6 @@ Attempt to establish a cookie-based session in exchange for credentials.
- `credentials` **[object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)**
- `credentials.name` **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** Login username. Also accepted as `username` or `email`.
- `credentials.password` **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** Login password
- `callback` **[function](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function)=** Gets passed `(err, { success:Boolean })`.
- `callback` **\[[function](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function)]** Gets passed `(err, { success:Boolean })`.
Returns **[Promise](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise)** promise, to be resolved on success or rejected on failure

View File

@ -334,6 +334,10 @@
{
"type": "strong",
"children": [
{
"type": "text",
"value": "["
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function",
@ -347,7 +351,7 @@
},
{
"type": "text",
"value": "="
"value": "]"
}
]
},

View File

@ -271,8 +271,12 @@
"static": []
},
"path": [
"foo"
]
{
"name": "foo",
"kind": "function"
}
],
"namespace": "foo"
},
{
"description": "",
@ -724,7 +728,10 @@
"static": []
},
"path": [
"foo"
]
{
"name": "foo"
}
],
"namespace": "foo"
}
]

View File

@ -2,7 +2,7 @@
**Parameters**
- `employees` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array).&lt;[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)>** The employees who are responsible for the project.
- `employees` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array)&lt;[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)>** The employees who are responsible for the project.
- `employees[].name` **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** The name of an employee.
- `employees[].department` **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** The employee's department.
- `employee`

View File

@ -54,7 +54,7 @@
},
{
"type": "text",
"value": ".<"
"value": "<"
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object",

View File

@ -164,7 +164,8 @@
"static": []
},
"path": [
null
]
{}
],
"namespace": "undefined"
}
]

View File

@ -106,7 +106,8 @@
"static": []
},
"path": [
null
]
{}
],
"namespace": "undefined"
}
]

View File

@ -1,4 +1,204 @@
[
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This function returns the number one.",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
}
}
},
"tags": [
{
"title": "param",
"description": "the second param",
"lineNumber": 2,
"type": {
"type": "NameExpression",
"name": "number"
},
"name": "b"
}
],
"loc": {
"start": {
"line": 1,
"column": 0
},
"end": {
"line": 4,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 5,
"column": 0
},
"end": {
"line": 7,
"column": 1
}
},
"code": "/**\n * This function returns the number one.\n * @param {number} b the second param\n */\nfunction addThem(a, b, c, { d, e, f }) {\n return a + b + c + d + e + f;\n}\n\n/**\n * This method has partially inferred params\n * @param {String} $0.fishes number of kinds of fish\n */\nfunction fishesAndFoxes({ fishes, foxes }) {\n return fishes + foxes;\n}\n\n/**\n * This method has a type in the description and a default in the code\n * @param {number} x\n */\nfunction withDefault(x = 2) {\n return x;\n}\n\n/**\n * This is foo's documentation\n */\nclass Foo {\n /**\n * The method\n * @param {number} x Param to method\n */\n method(x) {\n }\n}\n\n/**\n * Represents an IPv6 address\n *\n * This tests our support of optional parameters\n * @class Address6\n * @param {string} address - An IPv6 address string\n * @param {number} [groups=8] - How many octets to parse\n * @param {?number} third - A third argument\n * @param {Array} [foo=[1]] to properly be parsed\n * @example\n * var address = new Address6('2001::/32');\n */\nfunction Address6() {}\n\n/**\n * Create a GeoJSON data source instance given an options object\n *\n * This tests our support of nested parameters\n * @class GeoJSONSource\n * @param {Object} [options] optional options\n * @param {Object|string} options.data A GeoJSON data object or URL to it.\n * The latter is preferable in case of large GeoJSON files.\n * @param {number} [options.maxzoom=14] Maximum zoom to preserve detail at.\n * @param {number} [options.buffer] Tile buffer on each side.\n * @param {number} [options.tolerance] Simplification tolerance (higher means simpler).\n */\nfunction GeoJSONSource(options) {\n this.options = options;\n}\n\n/**\n * This tests our support for parameters with explicit types but with default\n * values specified in code.\n *\n * @param {number} x an argument\n *\n * @returns {number} some\n */\nexport const myfunc = (x = 123) => x;\n\n/**\n * This tests our support of JSDoc param tags without type information,\n * or any type information we could infer from annotations.\n *\n * @param address - An IPv6 address string\n */\nfunction foo(address) {\n return address;\n}\n"
},
"errors": [],
"params": [
{
"title": "param",
"name": "a",
"lineNumber": 5
},
{
"name": "b",
"lineNumber": 2,
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "the second param",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 17,
"offset": 16
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 17,
"offset": 16
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 17,
"offset": 16
}
}
},
"type": {
"type": "NameExpression",
"name": "number"
}
},
{
"title": "param",
"name": "c",
"lineNumber": 5
},
{
"title": "param",
"name": "$3",
"type": {
"type": "NameExpression",
"name": "Object"
},
"properties": [
{
"title": "param",
"name": "$3.d",
"lineNumber": 5
},
{
"title": "param",
"name": "$3.e",
"lineNumber": 5
},
{
"title": "param",
"name": "$3.f",
"lineNumber": 5
}
]
}
],
"name": "addThem",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
{
"name": "addThem",
"kind": "function"
}
],
"namespace": "addThem"
},
{
"description": {
"type": "root",
@ -172,8 +372,12 @@
"static": []
},
"path": [
"fishesAndFoxes"
]
{
"name": "fishesAndFoxes",
"kind": "function"
}
],
"namespace": "fishesAndFoxes"
},
{
"description": {
@ -285,8 +489,12 @@
"static": []
},
"path": [
"withDefault"
]
{
"name": "withDefault",
"kind": "function"
}
],
"namespace": "withDefault"
},
{
"description": {
@ -530,16 +738,29 @@
"static": []
},
"path": [
"Foo",
"method"
]
{
"name": "Foo",
"kind": "class"
},
{
"name": "method",
"kind": "function",
"scope": "instance"
}
],
"namespace": "Foo#method"
}
],
"static": []
"static": [],
"events": []
},
"path": [
"Foo"
]
{
"name": "Foo",
"kind": "class"
}
],
"namespace": "Foo"
},
{
"description": {
@ -983,204 +1204,12 @@
"static": []
},
"path": [
"Address6"
]
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This function returns the number one.",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
}
}
},
"tags": [
{
"title": "param",
"description": "the second param",
"lineNumber": 2,
"type": {
"type": "NameExpression",
"name": "number"
},
"name": "b"
"name": "Address6",
"kind": "class"
}
],
"loc": {
"start": {
"line": 1,
"column": 0
},
"end": {
"line": 4,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 5,
"column": 0
},
"end": {
"line": 7,
"column": 1
}
},
"code": "/**\n * This function returns the number one.\n * @param {number} b the second param\n */\nfunction addThem(a, b, c, { d, e, f }) {\n return a + b + c + d + e + f;\n}\n\n/**\n * This method has partially inferred params\n * @param {String} $0.fishes number of kinds of fish\n */\nfunction fishesAndFoxes({ fishes, foxes }) {\n return fishes + foxes;\n}\n\n/**\n * This method has a type in the description and a default in the code\n * @param {number} x\n */\nfunction withDefault(x = 2) {\n return x;\n}\n\n/**\n * This is foo's documentation\n */\nclass Foo {\n /**\n * The method\n * @param {number} x Param to method\n */\n method(x) {\n }\n}\n\n/**\n * Represents an IPv6 address\n *\n * This tests our support of optional parameters\n * @class Address6\n * @param {string} address - An IPv6 address string\n * @param {number} [groups=8] - How many octets to parse\n * @param {?number} third - A third argument\n * @param {Array} [foo=[1]] to properly be parsed\n * @example\n * var address = new Address6('2001::/32');\n */\nfunction Address6() {}\n\n/**\n * Create a GeoJSON data source instance given an options object\n *\n * This tests our support of nested parameters\n * @class GeoJSONSource\n * @param {Object} [options] optional options\n * @param {Object|string} options.data A GeoJSON data object or URL to it.\n * The latter is preferable in case of large GeoJSON files.\n * @param {number} [options.maxzoom=14] Maximum zoom to preserve detail at.\n * @param {number} [options.buffer] Tile buffer on each side.\n * @param {number} [options.tolerance] Simplification tolerance (higher means simpler).\n */\nfunction GeoJSONSource(options) {\n this.options = options;\n}\n\n/**\n * This tests our support for parameters with explicit types but with default\n * values specified in code.\n *\n * @param {number} x an argument\n *\n * @returns {number} some\n */\nexport const myfunc = (x = 123) => x;\n\n/**\n * This tests our support of JSDoc param tags without type information,\n * or any type information we could infer from annotations.\n *\n * @param address - An IPv6 address string\n */\nfunction foo(address) {\n return address;\n}\n"
},
"errors": [],
"params": [
{
"title": "param",
"name": "a",
"lineNumber": 5
},
{
"name": "b",
"lineNumber": 2,
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "the second param",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 17,
"offset": 16
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 17,
"offset": 16
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 17,
"offset": 16
}
}
},
"type": {
"type": "NameExpression",
"name": "number"
}
},
{
"title": "param",
"name": "c",
"lineNumber": 5
},
{
"title": "param",
"name": "$3",
"type": {
"type": "NameExpression",
"name": "Object"
},
"properties": [
{
"title": "param",
"name": "$3.d",
"lineNumber": 5
},
{
"title": "param",
"name": "$3.e",
"lineNumber": 5
},
{
"title": "param",
"name": "$3.f",
"lineNumber": 5
}
]
}
],
"name": "addThem",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
"addThem"
]
"namespace": "Address6"
},
{
"description": {
@ -1711,8 +1740,12 @@
"static": []
},
"path": [
"GeoJSONSource"
]
{
"name": "GeoJSONSource",
"kind": "class"
}
],
"namespace": "GeoJSONSource"
},
{
"description": {
@ -1945,8 +1978,12 @@
"static": []
},
"path": [
"myfunc"
]
{
"name": "myfunc",
"kind": "constant"
}
],
"namespace": "myfunc"
},
{
"description": {
@ -2103,7 +2140,11 @@
"static": []
},
"path": [
"foo"
]
{
"name": "foo",
"kind": "function"
}
],
"namespace": "foo"
}
]

View File

@ -1,3 +1,17 @@
# addThem
This function returns the number one.
**Parameters**
- `a`
- `b` **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** the second param
- `c`
- `$3` **[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)**
- `$3.d`
- `$3.e`
- `$3.f`
# fishesAndFoxes
This method has partially inferred params
@ -14,7 +28,7 @@ This method has a type in the description and a default in the code
**Parameters**
- `x` **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)=(default 2)**
- `x` **\[[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)](default 2)**
# Foo
@ -37,9 +51,9 @@ This tests our support of optional parameters
**Parameters**
- `address` **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** An IPv6 address string
- `groups` **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)=** How many octets to parse
- `groups` **\[[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)]** How many octets to parse
- `third` **?[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** A third argument
- `foo` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array)=** to properly be parsed
- `foo` **\[[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array)]** to properly be parsed
**Examples**
@ -47,20 +61,6 @@ This tests our support of optional parameters
var address = new Address6('2001::/32');
```
# addThem
This function returns the number one.
**Parameters**
- `a`
- `b` **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** the second param
- `c`
- `$3` **[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)**
- `$3.d`
- `$3.e`
- `$3.f`
# GeoJSONSource
Create a GeoJSON data source instance given an options object
@ -69,12 +69,12 @@ This tests our support of nested parameters
**Parameters**
- `options` **[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)=** optional options
- `options.data` **([Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)\|[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String))** A GeoJSON data object or URL to it.
- `options` **\[[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)]** optional options
- `options.data` **([Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object) \| [string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String))** A GeoJSON data object or URL to it.
The latter is preferable in case of large GeoJSON files.
- `options.maxzoom` **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)=** Maximum zoom to preserve detail at.
- `options.buffer` **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)=** Tile buffer on each side.
- `options.tolerance` **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)=** Simplification tolerance (higher means simpler).
- `options.maxzoom` **\[[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)]** Maximum zoom to preserve detail at.
- `options.buffer` **\[[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)]** Tile buffer on each side.
- `options.tolerance` **\[[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)]** Simplification tolerance (higher means simpler).
# myfunc

View File

@ -1,6 +1,293 @@
{
"type": "root",
"children": [
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "addThem"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This function returns the number one.",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Parameters"
}
]
},
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "a"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "b"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"type": "link",
"children": [
{
"type": "text",
"value": "number"
}
]
}
]
},
{
"type": "text",
"value": " "
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "the second param",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 17,
"offset": 16
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 17,
"offset": 16
},
"indent": []
}
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "c"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$3"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object",
"type": "link",
"children": [
{
"type": "text",
"value": "Object"
}
]
}
]
},
{
"type": "text",
"value": " "
}
]
},
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$3.d"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$3.e"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$3.f"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
}
]
}
]
}
]
},
{
"depth": 1,
"type": "heading",
@ -275,6 +562,10 @@
{
"type": "strong",
"children": [
{
"type": "text",
"value": "["
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
@ -288,7 +579,7 @@
},
{
"type": "text",
"value": "="
"value": "]"
},
{
"type": "text",
@ -667,6 +958,10 @@
{
"type": "strong",
"children": [
{
"type": "text",
"value": "["
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
@ -680,7 +975,7 @@
},
{
"type": "text",
"value": "="
"value": "]"
}
]
},
@ -821,6 +1116,10 @@
{
"type": "strong",
"children": [
{
"type": "text",
"value": "["
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array",
@ -834,7 +1133,7 @@
},
{
"type": "text",
"value": "="
"value": "]"
}
]
},
@ -897,293 +1196,6 @@
"type": "code",
"value": "var address = new Address6('2001::/32');"
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "addThem"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "This function returns the number one.",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 38,
"offset": 37
},
"indent": []
}
},
{
"type": "strong",
"children": [
{
"type": "text",
"value": "Parameters"
}
]
},
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "a"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "b"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"type": "link",
"children": [
{
"type": "text",
"value": "number"
}
]
}
]
},
{
"type": "text",
"value": " "
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "the second param",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 17,
"offset": 16
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 17,
"offset": 16
},
"indent": []
}
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "c"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$3"
},
{
"type": "text",
"value": " "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object",
"type": "link",
"children": [
{
"type": "text",
"value": "Object"
}
]
}
]
},
{
"type": "text",
"value": " "
}
]
},
{
"ordered": false,
"type": "list",
"children": [
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$3.d"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$3.e"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
},
{
"type": "listItem",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "inlineCode",
"value": "$3.f"
},
{
"type": "text",
"value": " "
},
{
"type": "text",
"value": " "
}
]
}
]
}
]
}
]
}
]
},
{
"depth": 1,
"type": "heading",
@ -1294,6 +1306,10 @@
{
"type": "strong",
"children": [
{
"type": "text",
"value": "["
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object",
@ -1307,7 +1323,7 @@
},
{
"type": "text",
"value": "="
"value": "]"
}
]
},
@ -1390,7 +1406,7 @@
},
{
"type": "text",
"value": "|"
"value": " | "
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String",
@ -1473,6 +1489,10 @@
{
"type": "strong",
"children": [
{
"type": "text",
"value": "["
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
@ -1486,7 +1506,7 @@
},
{
"type": "text",
"value": "="
"value": "]"
}
]
},
@ -1550,6 +1570,10 @@
{
"type": "strong",
"children": [
{
"type": "text",
"value": "["
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
@ -1563,7 +1587,7 @@
},
{
"type": "text",
"value": "="
"value": "]"
}
]
},
@ -1627,6 +1651,10 @@
{
"type": "strong",
"children": [
{
"type": "text",
"value": "["
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
@ -1640,7 +1668,7 @@
},
{
"type": "text",
"value": "="
"value": "]"
}
]
},

View File

@ -178,7 +178,10 @@
"static": []
},
"path": [
"hexToUInt32Color"
]
{
"name": "hexToUInt32Color"
}
],
"namespace": "hexToUInt32Color"
}
]

View File

@ -84,7 +84,11 @@
"static": []
},
"path": [
"apples"
]
{
"name": "apples",
"kind": "function"
}
],
"namespace": "apples"
}
]

View File

@ -2,14 +2,6 @@
# API
## bar
A second function with docs
**Parameters**
- `b`
## foo
A function with documentation.
@ -20,4 +12,12 @@ A function with documentation.
Returns **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** answer
## bar
A second function with docs
**Parameters**
- `b`
# Another section

View File

@ -90,7 +90,10 @@
"static": []
},
"path": [
"cheese"
]
{
"name": "cheese"
}
],
"namespace": "cheese"
}
]

View File

@ -154,7 +154,11 @@
"static": []
},
"path": [
"simple-hashbang.input"
]
{
"name": "simple-hashbang.input",
"kind": "function"
}
],
"namespace": "simple-hashbang.input"
}
]

View File

@ -236,7 +236,11 @@
"static": []
},
"path": [
"returnTwo"
]
{
"name": "returnTwo",
"kind": "function"
}
],
"namespace": "returnTwo"
}
]

View File

@ -156,7 +156,11 @@
"static": []
},
"path": [
"simple.input"
]
{
"name": "simple.input",
"kind": "function"
}
],
"namespace": "simple.input"
}
]

View File

@ -154,7 +154,11 @@
"static": []
},
"path": [
"simple.input"
]
{
"name": "simple.input",
"kind": "function"
}
],
"namespace": "simple.input"
}
]

View File

@ -1,4 +1,96 @@
[
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Apples are red",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 15,
"offset": 14
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 15,
"offset": 14
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 15,
"offset": 14
}
}
},
"tags": [],
"loc": {
"start": {
"line": 1,
"column": 0
},
"end": {
"line": 3,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 4,
"column": 0
},
"end": {
"line": 6,
"column": 2
}
},
"file": "[path]",
"code": "/**\n * Apples are red\n */\nvar apples = function() {\n return 'red';\n};\n\n/**\n * Bananas are yellow\n */\nvar bananas = function() {\n return 'yellow';\n};\n\n/**\n * Carrots are awesome\n */\nvar carrots = function() {\n return 'awesome';\n};\n"
},
"name": "apples",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
{
"name": "apples",
"kind": "function"
}
],
"namespace": "apples"
},
{
"description": {
"type": "root",
@ -84,8 +176,12 @@
"static": []
},
"path": [
"bananas"
]
{
"name": "bananas",
"kind": "function"
}
],
"namespace": "bananas"
},
{
"description": {
@ -172,95 +268,11 @@
"static": []
},
"path": [
"carrots"
]
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Apples are red",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 15,
"offset": 14
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 15,
"offset": 14
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 15,
"offset": 14
}
{
"name": "carrots",
"kind": "function"
}
},
"tags": [],
"loc": {
"start": {
"line": 1,
"column": 0
},
"end": {
"line": 3,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 4,
"column": 0
},
"end": {
"line": 6,
"column": 2
}
},
"file": "[path]",
"code": "/**\n * Apples are red\n */\nvar apples = function() {\n return 'red';\n};\n\n/**\n * Bananas are yellow\n */\nvar bananas = function() {\n return 'yellow';\n};\n\n/**\n * Carrots are awesome\n */\nvar carrots = function() {\n return 'awesome';\n};\n"
},
"name": "apples",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
"apples"
]
],
"namespace": "carrots"
}
]

View File

@ -305,7 +305,11 @@
"static": []
},
"path": [
"returnTwo"
]
{
"name": "returnTwo",
"kind": "function"
}
],
"namespace": "returnTwo"
}
]

View File

@ -155,7 +155,8 @@
"static": []
},
"path": [
null
]
{}
],
"namespace": "undefined"
}
]

View File

@ -1,257 +1,4 @@
[
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "TWO",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 4,
"offset": 3
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 4,
"offset": 3
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 4,
"offset": 3
}
}
},
"tags": [
{
"title": "returns",
"description": "something",
"lineNumber": 2,
"type": {
"type": "NameExpression",
"name": "number"
}
}
],
"loc": {
"start": {
"line": 8,
"column": 0
},
"end": {
"line": 11,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 12,
"column": 0
},
"end": {
"line": 14,
"column": 1
}
},
"code": "/**\n * ONE\n * @returns {number} something\n */\nfunction fooBar() {\n return 1;\n}\n/**\n * TWO\n * @returns {number} something\n */\nfunction fooBaz() {\n return 2;\n}\n/**\n * this is a type\n * @class Something\n */\n"
},
"errors": [],
"returns": [
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "something",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
}
}
},
"type": {
"type": "NameExpression",
"name": "number"
}
}
],
"name": "fooBaz",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
"fooBaz"
]
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "this is a type",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 15,
"offset": 14
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 15,
"offset": 14
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 15,
"offset": 14
}
}
},
"tags": [
{
"title": "class",
"description": null,
"lineNumber": 2,
"type": null,
"name": "Something"
}
],
"loc": {
"start": {
"line": 15,
"column": 0
},
"end": {
"line": 18,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 12,
"column": 0
},
"end": {
"line": 14,
"column": 1
}
}
},
"errors": [],
"kind": "class",
"name": "Something",
"members": {
"instance": [],
"static": []
},
"path": [
"Something"
]
},
{
"description": {
"type": "root",
@ -407,7 +154,272 @@
"static": []
},
"path": [
"fooBar"
]
{
"name": "fooBar",
"kind": "function"
}
],
"namespace": "fooBar"
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "TWO",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 4,
"offset": 3
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 4,
"offset": 3
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 4,
"offset": 3
}
}
},
"tags": [
{
"title": "returns",
"description": "something",
"lineNumber": 2,
"type": {
"type": "NameExpression",
"name": "number"
}
}
],
"loc": {
"start": {
"line": 8,
"column": 0
},
"end": {
"line": 11,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 12,
"column": 0
},
"end": {
"line": 14,
"column": 1
}
},
"code": "/**\n * ONE\n * @returns {number} something\n */\nfunction fooBar() {\n return 1;\n}\n/**\n * TWO\n * @returns {number} something\n */\nfunction fooBaz() {\n return 2;\n}\n/**\n * this is a type\n * @class Something\n */\n"
},
"errors": [],
"returns": [
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "something",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
}
}
},
"type": {
"type": "NameExpression",
"name": "number"
}
}
],
"name": "fooBaz",
"kind": "function",
"members": {
"instance": [],
"static": []
},
"path": [
{
"name": "fooBaz",
"kind": "function"
}
],
"namespace": "fooBaz"
},
{
"description": {
"type": "root",
"children": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "this is a type",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 15,
"offset": 14
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 15,
"offset": 14
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 15,
"offset": 14
}
}
},
"tags": [
{
"title": "class",
"description": null,
"lineNumber": 2,
"type": null,
"name": "Something"
}
],
"loc": {
"start": {
"line": 15,
"column": 0
},
"end": {
"line": 18,
"column": 3
}
},
"context": {
"loc": {
"start": {
"line": 12,
"column": 0
},
"end": {
"line": 14,
"column": 1
}
}
},
"errors": [],
"kind": "class",
"name": "Something",
"members": {
"instance": [],
"static": []
},
"path": [
{
"name": "Something",
"kind": "class"
}
],
"namespace": "Something"
}
]

View File

@ -1,3 +1,9 @@
# fooBar
ONE
Returns **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** something
# fooBaz
TWO
@ -7,9 +13,3 @@ Returns **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refer
# Something
this is a type
# fooBar
ONE
Returns **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** something

View File

@ -1,6 +1,115 @@
{
"type": "root",
"children": [
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "fooBar"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "ONE",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 4,
"offset": 3
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 4,
"offset": 3
},
"indent": []
}
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Returns "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"type": "link",
"children": [
{
"type": "text",
"value": "number"
}
]
}
]
},
{
"type": "text",
"value": " "
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "something",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
]
},
{
"depth": 1,
"type": "heading",
@ -154,115 +263,6 @@
},
"indent": []
}
},
{
"depth": 1,
"type": "heading",
"children": [
{
"type": "text",
"value": "fooBar"
}
]
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "ONE",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 4,
"offset": 3
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 4,
"offset": 3
},
"indent": []
}
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "Returns "
},
{
"type": "strong",
"children": [
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number",
"type": "link",
"children": [
{
"type": "text",
"value": "number"
}
]
}
]
},
{
"type": "text",
"value": " "
},
{
"type": "paragraph",
"children": [
{
"type": "text",
"value": "something",
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
],
"position": {
"start": {
"line": 1,
"column": 1,
"offset": 0
},
"end": {
"line": 1,
"column": 10,
"offset": 9
},
"indent": []
}
}
]
}
]
}

View File

@ -181,7 +181,11 @@
"static": []
},
"path": [
"Address6"
]
{
"name": "Address6",
"kind": "class"
}
],
"namespace": "Address6"
}
]

View File

@ -4,4 +4,4 @@ Represents an IPv6 address
**Parameters**
- `address` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array).&lt;[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)>** An IPv6 address string
- `address` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array)&lt;[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)>** An IPv6 address string

View File

@ -89,7 +89,7 @@
},
{
"type": "text",
"value": ".<"
"value": "<"
},
{
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String",

View File

@ -246,7 +246,11 @@
"static": []
},
"path": [
"MyType"
]
{
"name": "MyType",
"kind": "typedef"
}
],
"namespace": "MyType"
}
]

View File

@ -58,11 +58,11 @@ test('hierarchy', function (t) {
var classMembers = comments[0].members;
t.deepEqual(map(classMembers.static, 'name'), ['isClass', 'MAGIC_NUMBER']);
t.deepEqual(map(classMembers.instance, 'name'), ['getFoo', 'event']);
t.deepEqual(map(classMembers.instance, 'name'), ['getFoo']);
t.deepEqual(classMembers.static[0].path, ['Class', 'isClass']);
t.deepEqual(classMembers.instance[0].path, ['Class', 'getFoo']);
t.deepEqual(classMembers.instance[1].path, ['Class', 'event']);
t.deepEqual(map(classMembers.static[0].path, 'name'), ['Class', 'isClass']);
t.deepEqual(map(classMembers.instance[0].path, 'name'), ['Class', 'getFoo']);
t.deepEqual(map(classMembers.events[0].path, 'name'), ['Class', 'event']);
t.end();
});
@ -97,8 +97,8 @@ test('hierarchy - nesting', function (t) {
var enumMembers = classMembers.static[0].members;
t.deepEqual(map(enumMembers.static, 'name'), ['Parent', 'Child']);
t.deepEqual(enumMembers.static[0].path, ['Parent', 'enum', 'Parent']);
t.deepEqual(enumMembers.static[1].path, ['Parent', 'enum', 'Child']);
t.deepEqual(map(enumMembers.static[0].path, 'name'), ['Parent', 'enum', 'Parent']);
t.deepEqual(map(enumMembers.static[1].path, 'name'), ['Parent', 'enum', 'Child']);
t.end();
});

View File

@ -33,6 +33,10 @@ test('inferKind', function (t) {
'class Foo { /** set b */ set b(v) { } }'
)).kind, 'member', 'member via set');
t.equal(inferKind(toComment(
'var foo = { /** thing */ b: function(v) { } }'
)).kind, 'function', 'function via set');
t.equal(inferKind(toComment(
'class Foo { /** get b */ get b() { } }'
)).kind, 'member', 'member via get');

View File

@ -24,6 +24,13 @@ function evaluate(fn, filename) {
});
}
function addJSDocTag(tree) {
visit(tree, 'link', function (node) {
node.jsdoc = true;
});
return tree;
}
function removePosition(tree) {
visit(tree, function (node) {
delete node.position;
@ -911,15 +918,15 @@ test('parse - unknown tag', function (t) {
test('parse - {@link}', function (t) {
t.deepEqual(removePosition(evaluate(function () {
/** {@link Foo} */
})[0].description), removePosition(remark.parse('[Foo](Foo)')));
})[0].description), addJSDocTag(removePosition(remark.parse('[Foo](Foo)'))));
t.deepEqual(removePosition(evaluate(function () {
/** {@link Foo|text} */
})[0].description), removePosition(remark.parse('[text](Foo)')));
})[0].description), addJSDocTag(removePosition(remark.parse('[text](Foo)'))));
t.deepEqual(removePosition(evaluate(function () {
/** {@link Foo text} */
})[0].description), removePosition(remark.parse('[text](Foo)')));
})[0].description), addJSDocTag(removePosition(remark.parse('[text](Foo)'))));
t.done();
});
@ -942,6 +949,7 @@ test('parse - {@tutorial}', function (t) {
children: [{
type: 'tutorial',
url: 'id',
jsdoc: true,
title: null,
children: [{
type: 'text',
@ -960,6 +968,7 @@ test('parse - {@tutorial}', function (t) {
children: [{
type: 'tutorial',
url: 'id',
jsdoc: true,
title: null,
children: [{
type: 'text',
@ -978,6 +987,7 @@ test('parse - {@tutorial}', function (t) {
children: [{
type: 'tutorial',
url: 'id',
jsdoc: true,
title: null,
children: [{
type: 'text',

View File

@ -13,6 +13,7 @@ test('polyglot', function (t) {
source: fs.readFileSync(file, 'utf8')
});
delete result[0].context.file;
delete result[0].context.sortKey;
t.deepEqual(result, [{
errors: [],
context: {

View File

@ -4,19 +4,19 @@ var test = require('tap').test,
sort = require('../../lib/sort');
test('sort stream alphanumeric', function (t) {
var apples = { context: { filename: 'a.txt', loc: { start: { line: 0 } } }, name: 'apples' };
var carrot = { context: { filename: 'a.txt', loc: { start: { line: 1 } } }, name: 'carrot' };
var banana = { context: { filename: 'a.txt', loc: { start: { line: 2 } } }, name: 'bananas' };
var apples = { context: { sortKey: 'a' }, name: 'apples' };
var carrot = { context: { sortKey: 'b' }, name: 'carrot' };
var banana = { context: { sortKey: 'c' }, name: 'bananas' };
t.deepEqual([
apples, carrot, banana
].sort(sort.bind(undefined, null)), [
].sort(sort), [
apples, carrot, banana
], 'sort stream alphanumeric');
t.deepEqual([
carrot, apples, banana
].sort(sort.bind(undefined, null)), [
].sort(sort), [
apples, carrot, banana
], 'sort stream alphanumeric');

View File

@ -95,7 +95,7 @@ test('html', function (tt) {
var clean = result.sort(function (a, b) {
return a.path > b.path;
}).filter(function (r) {
return !r.path.match(/(json|woff)$/);
return r.path.match(/(html)$/);
}).map(function (r) {
return r.contents;
}).join('\n');