1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150
|
=== /tests/cases/fourslash/jsDocTypedef1.js ===
// /**
// * @typedef {Object} Opts
// * @property {string} x
// * @property {string=} y
// * @property {string} [z]
// * @property {string} [w="hi"]
// *
// * @param {Opts} opts
// */
// function foo(opts) {
// ^^^^
// | ----------------------------------------------------------------------
// | (parameter) opts: Opts
// | @param opts
// | ----------------------------------------------------------------------
// opts.x;
// }
// foo({x: 'abc'});
// /**
// * @typedef {object} Opts1
// * @property {string} x
// * @property {string=} y
// * @property {string} [z]
// * @property {string} [w="hi"]
// *
// * @param {Opts1} opts
// */
// function foo1(opts1) {
// ^^^^^
// | ----------------------------------------------------------------------
// | (parameter) opts1: any
// | ----------------------------------------------------------------------
// opts1.x;
// }
// foo1({x: 'abc'});
[
{
"marker": {
"fileName": "/tests/cases/fourslash/jsDocTypedef1.js",
"position": 179,
"name": "1"
},
"item": {
"kind": "parameter",
"kindModifiers": "",
"textSpan": {
"start": 179,
"length": 4
},
"displayParts": [
{
"text": "(",
"kind": "punctuation"
},
{
"text": "parameter",
"kind": "text"
},
{
"text": ")",
"kind": "punctuation"
},
{
"text": " ",
"kind": "space"
},
{
"text": "opts",
"kind": "parameterName"
},
{
"text": ":",
"kind": "punctuation"
},
{
"text": " ",
"kind": "space"
},
{
"text": "Opts",
"kind": "aliasName"
}
],
"documentation": [],
"tags": [
{
"name": "param",
"text": [
{
"text": "opts",
"kind": "text"
}
]
}
]
}
},
{
"marker": {
"fileName": "/tests/cases/fourslash/jsDocTypedef1.js",
"position": 400,
"name": "2"
},
"item": {
"kind": "parameter",
"kindModifiers": "",
"textSpan": {
"start": 400,
"length": 5
},
"displayParts": [
{
"text": "(",
"kind": "punctuation"
},
{
"text": "parameter",
"kind": "text"
},
{
"text": ")",
"kind": "punctuation"
},
{
"text": " ",
"kind": "space"
},
{
"text": "opts1",
"kind": "parameterName"
},
{
"text": ":",
"kind": "punctuation"
},
{
"text": " ",
"kind": "space"
},
{
"text": "any",
"kind": "keyword"
}
],
"documentation": []
}
}
]
|