(
values: alphaTab.importer.alphaTex.AlphaTexArgumentList,
signatures: SignatureDefinition[],
offset: number
)
| 172 | } |
| 173 | |
| 174 | function createArgumentsHover( |
| 175 | values: alphaTab.importer.alphaTex.AlphaTexArgumentList, |
| 176 | signatures: SignatureDefinition[], |
| 177 | offset: number |
| 178 | ): Hover | null { |
| 179 | const value = binaryNodeSearch(values.arguments, offset); |
| 180 | if (value) { |
| 181 | const valueIndex = values.arguments.indexOf(value); |
| 182 | const signature = resolveSignature(signatures, values).values().next().value; |
| 183 | if (signature && valueIndex < signature.parameters.length) { |
| 184 | const parameterDoc = signature.parameters[valueIndex]; |
| 185 | const valueText = valueToText(value).toLowerCase(); |
| 186 | const valueItem = parameterDoc.values?.find(d => d.name.toLowerCase() === valueText); |
| 187 | if (valueItem) { |
| 188 | return { |
| 189 | contents: { |
| 190 | kind: 'markdown', |
| 191 | value: parameterValueDocsToMarkDown(valueItem) |
| 192 | } |
| 193 | }; |
| 194 | } |
| 195 | } |
| 196 | } |
| 197 | return null; |
| 198 | } |
| 199 | |
| 200 | function withSignaturesToMarkdown(docs: WithSignatures, prefix: string, syntaxName: string = 'Syntax'): string { |
| 201 | return [ |
no test coverage detected