✨ feat(tsl-api-reference): index class and unit APIs
Migrate reference pages to declaration-line storage and rebuild the 13-column index. Add qualified member lookup plus regression and end-to-end coverage.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
---
|
||||
name: tsl-api-reference
|
||||
description: "在编写或审查 TSL 代码、需要权威的 TSL API 事实时使用:内置/dotnet 函数、模块 API、精确签名、参数、返回值、示例,或在不知道函数名时通过中文关键词检索。"
|
||||
description: "当编写、修改或审查 TSL 代码时需要确认 builtin、dotnet 或模块 API 是否存在及其精确签名、参数、返回值和示例时使用;也用于只记得函数用途而想不起函数名,或不确定记忆中的 TSL API 名称与参数是否准确时。"
|
||||
---
|
||||
|
||||
# TSL API 参考
|
||||
@@ -20,6 +20,12 @@ description: "在编写或审查 TSL 代码、需要权威的 TSL API 事实时
|
||||
python <this-skill-dir>/scripts/lookup.py --name argmax
|
||||
```
|
||||
|
||||
- 已知 class/unit 成员的完全限定名称:
|
||||
|
||||
```bash
|
||||
python <this-skill-dir>/scripts/lookup.py --name DemoUnit.Document.Save
|
||||
```
|
||||
|
||||
- 未知名称,但知道其行为或中文关键词:
|
||||
|
||||
```bash
|
||||
@@ -27,9 +33,45 @@ description: "在编写或审查 TSL 代码、需要权威的 TSL API 事实时
|
||||
```
|
||||
|
||||
- 关键词采用 AND 语义;增加关键词可缩小结果范围。
|
||||
- 使用 `--limit N` 调整打印的候选行数量。
|
||||
- 关键词会搜索原有字段及 `qualified_name`、`owner`、`kind`、`binding`、
|
||||
`visibility`;因此可用 `--kw protected method` 等组合缩小成员范围。
|
||||
- 使用 `--limit N` 调整打印的候选行数量,N 必须 >= 1。
|
||||
|
||||
精确查询会打印完整的条目正文和来源标记。关键词查询打印候选行;
|
||||
选定候选项后,再用 `--name` 重新执行精确查询。
|
||||
|
||||
若精确查询无匹配,改用中文关键词重试。若随附数据缺失,请重新安装本 skill。
|
||||
`--name` 对简单名称和完全限定名称做大小写不敏感的精确匹配。查询简单成员名会
|
||||
返回所有 owner 下的同名 API;查询 `Unit.Class.Member` 等完全限定名称可限定所属
|
||||
class/unit。重载共享 `qualified_name`,精确查询会返回该名称的全部重载。
|
||||
|
||||
混合页面中的精确查询仍按唯一 `page#anchor` 定位,只截取目标 H2 或成员子树。
|
||||
每个 H2 的声明类型独立,不使用全局页面类型。
|
||||
|
||||
关键词候选优先显示 `qualified_name`,并根据 kind/binding 显示声明术语:实例
|
||||
method 显示 `function`,类方法显示 `class function`,静态字段与常量分别显示
|
||||
`static field`、`static const`。
|
||||
|
||||
同名 API 存在于多个 scope 或模块时(如 `host`、`login`、`port`),`--name`
|
||||
会依次打印全部同名条目,每条带自己的来源标记。按当前代码所处的 scope 和模块
|
||||
选择条目,不要默认取第一条。
|
||||
|
||||
查询脚本兼容旧 8 列和新 13 列 `function_index.tsv`。旧 8 列索引仍可查询原有
|
||||
function;完全限定名称、owner、kind、binding、visibility 依赖新索引中的扩展列。
|
||||
|
||||
## 退出码
|
||||
|
||||
| 退出码 | 含义 | 处理方式 |
|
||||
| ------ | -------------------------------------- | ------------------------------------------------ |
|
||||
| 0 | 查询完成,含"查无此 API"和关键词零命中 | 读取输出;无匹配时换中文关键词重试 |
|
||||
| 1 | 随附数据缺失或为空 | 重新安装本 skill,或用 `--tsv PATH` 指向可用索引 |
|
||||
| 2 | 参数不合法 | 按提示修正参数后重跑 |
|
||||
|
||||
rc=1 表示 skill 数据本身有问题,不表示该 API 不存在;此时不要据此断言 API 缺失。
|
||||
|
||||
## 常见错误
|
||||
|
||||
- 删掉下划线或改写成驼峰式后查询,导致误判 API 不存在。名称按原样查。
|
||||
- 把关键词查询的 summary 当作签名事实。summary 只用于挑候选,签名必须由
|
||||
`--name` 的条目正文提供。
|
||||
- 多条同名结果里随手取第一条,忽略 scope 与模块差异。
|
||||
- 查不到就凭记忆或相似语言推断签名。查不到时说明缺口并停止。
|
||||
|
||||
Reference in New Issue
Block a user