feat(js) Add type annotation
This commit is contained in:
@@ -182,8 +182,8 @@ There is a list of supported languages and fields, with their annotation style
|
|||||||
| python | | | `func`, `class`, `file` |
|
| python | | | `func`, `class`, `file` |
|
||||||
| | [Google docstrings](https://google.github.io/styleguide/pyguide.html) (`"google_docstrings"`) | `Args`, `Attributes`, `Returns` |
|
| | [Google docstrings](https://google.github.io/styleguide/pyguide.html) (`"google_docstrings"`) | `Args`, `Attributes`, `Returns` |
|
||||||
| | [Numpydoc](https://numpydoc.readthedocs.io/en/latest/format.html) (`"numpydoc"`)| `Arguments`, `Attributes`, `Returns`|
|
| | [Numpydoc](https://numpydoc.readthedocs.io/en/latest/format.html) (`"numpydoc"`)| `Arguments`, `Attributes`, `Returns`|
|
||||||
| javascript | | | `func`, `class`, `file`|
|
| javascript | | | `func`, `class`, `file`, `type`|
|
||||||
| | [JSDoc](https://jsdoc.app) (`"jsdoc"`) | `@param`, `@returns`, `@class`, `@classdesc`, `@module`|
|
| | [JSDoc](https://jsdoc.app) (`"jsdoc"`) | `@param`, `@returns`, `@class`, `@classdesc`, `@module`, `@type`|
|
||||||
| typescript | | | `func`, `class`, `file`, `type` |
|
| typescript | | | `func`, `class`, `file`, `type` |
|
||||||
| | [JSDoc](https://jsdoc.app) (`"jsdoc"`) | `@param`, `@returns`, `@class`, `@classdesc`, `@type`, `@module`|
|
| | [JSDoc](https://jsdoc.app) (`"jsdoc"`) | `@param`, `@returns`, `@class`, `@classdesc`, `@type`, `@module`|
|
||||||
| c | | | `func`, `file`|
|
| c | | | `func`, `file`|
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ return {
|
|||||||
},
|
},
|
||||||
class = { "function_declaration", "expression_statement", "variable_declaration", "class_declaration" },
|
class = { "function_declaration", "expression_statement", "variable_declaration", "class_declaration" },
|
||||||
file = { "program" },
|
file = { "program" },
|
||||||
|
type = { "variable_declaration", "lexical_declaration" },
|
||||||
},
|
},
|
||||||
|
|
||||||
data = {
|
data = {
|
||||||
@@ -95,6 +96,15 @@ return {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
type = {
|
||||||
|
["variable_declaration|lexical_declaration"] = {
|
||||||
|
["0"] = {
|
||||||
|
extract = function()
|
||||||
|
return {}
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
template = {
|
template = {
|
||||||
@@ -103,16 +113,17 @@ return {
|
|||||||
|
|
||||||
jsdoc = {
|
jsdoc = {
|
||||||
{ nil, "/* $1 */", { no_results = true, type = { "func", "class" } } },
|
{ nil, "/* $1 */", { no_results = true, type = { "func", "class" } } },
|
||||||
|
{ nil, "/* @type $1 */", { no_results = true, type = { "type" } } },
|
||||||
|
|
||||||
{ nil, "/**", { no_results = true, type = { "file" } } },
|
{ nil, "/**", { no_results = true, type = { "file" } } },
|
||||||
{ nil, " * @module $1", { no_results = true, type = { "file" } } },
|
{ nil, " * @module $1", { no_results = true, type = { "file" } } },
|
||||||
{ nil, " */", { no_results = true, type = { "file" } } },
|
{ nil, " */", { no_results = true, type = { "file" } } },
|
||||||
|
|
||||||
{ nil, "/**" },
|
{ nil, "/**", { type = { "class", "func" } } },
|
||||||
{ "class_tag", " * @classdesc $1", { before_first_item = { " * ", " * @class" }, type = { "class" } } },
|
{ "class_tag", " * @classdesc $1", { before_first_item = { " * ", " * @class" }, type = { "class" } } },
|
||||||
{ "parameters", " * @param {any} %s $1" },
|
{ "parameters", " * @param {any} %s $1", { type = { "func" } } },
|
||||||
{ "return_statement", " * @returns {$1|any}" },
|
{ "return_statement", " * @returns {$1|any}", { type = { "func" } } },
|
||||||
{ nil, " */" },
|
{ nil, " */", { type = { "class", "func" } } },
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user