--- name: tsl-api-reference description: "当编写、修改或审查 TSL 代码,需要确认 API、class 成员、框架回调或 API 参数可用值是否存在及其精确签名、参数、返回值和示例时使用;也用于按中文业务说法查找天软数据字典中的表、数据源与字段。触发说法包括「argmax 怎么用」「有没有去重函数」「TStringList 有哪些方法」「TSBackTesting 要重写什么」「getbk 的板块名」「申万煤炭的分类代码」「销售现金比率在哪个表」。不用于 TSL 语法、控制流、语言对象模型,也不用于决定 TSL 如何运行。" --- # TSL API 参考 本 skill 只负责可检索的 TSL API、class/framework 契约和天软数据字典事实。 语法、控制流、语言对象模型或运行方式问题不属于本 skill。 ## 查询路由 先选择一条路由,并完整读取对应文件后再执行: - 已知函数或成员名,或只知道 API 行为:读取 [`workflows/api-lookup.md`](workflows/api-lookup.md)。 - 查询 class 摘要、实现子类、重写回调或处理生命周期:读取 [`workflows/class-and-framework.md`](workflows/class-and-framework.md)。 - 按中文业务含义查表、数据源、字段或 API 参数可用值:读取 [`workflows/dictionary-lookup.md`](workflows/dictionary-lookup.md)。 具体参数、输出字段和退出码以所选脚本当前的 `--help` 为权威。 将 `` 替换为包含本 `SKILL.md` 的目录。 ## 全局硬规则 - API 名称按索引原样查询和报告。TSL 名称大小写不敏感,但下划线有意义;不得删除 下划线或改写成驼峰式。 - 不得凭记忆或参照相似语言推断 API 名称、签名、参数、返回值或回调字段。 - 同名结果不得默认取第一条;必须按 `scope`、`module`、owner 或完全限定名消歧。 - `lookup.py` 的 rc=1 表示 skill 数据缺失、损坏或正文不可达,不表示 API 不存在。 - 参数取值域标为 `runtime_catalog` 或“静态记录不完整”时,样例只用于定位 API;完整名称 必须按结果给出的运行时解析器核验,不能把样例当成完整清单。 ## 🔴 CHECKPOINT · 🛑 STOP 出现任一情况时,停止生成包含该 API 或回调字段的代码,并明确报告缺口: - `lookup.py --name` 无匹配; - `lookup.py --kw` 换用更准确的中文关键词后仍无候选; - 同名 API 或 class 无法按 `scope`、`module`、owner 或完全限定名消歧; - `class_lookup.py` 返回 `status: not_found`; - 请求依赖生命周期、配置或回调,但 `profile_status=not_profiled`; - Framework Profile 的 `contract_status` 不是 `resolved`。 - 参数取值需要运行时核验但当前环境无法核验,且代码会依赖该具体值。 rc=1 不进入上述“API 缺失”分支;应先修复或重新安装 skill 数据,再重新查询。 ## 输出约定 报告 API 事实时必须包含:索引中的原样名称或 `qualified_name`、`scope`、`module`、 由 `lookup.py --name` 正文取得的精确签名,以及对应的 `page#anchor` 来源。 关键词候选的 summary 只能用于选候选,不能作为签名事实。