📝 docs(tsl): clarify tsf-only top-level rules and type annotations
This commit is contained in:
parent
3a6382973e
commit
3dceaf71fd
|
|
@ -17,7 +17,8 @@
|
|||
|
||||
### 1.2 文件名与顶层声明(硬约束)
|
||||
|
||||
- TSL 语法要求:每个文件只能有一个顶层声明,且文件基名必须与顶层声明同名。
|
||||
- TSL 语法要求(仅 `.tsf`):每个 `.tsf` 文件只能有一个顶层声明,且文件基名必须与顶层声明同名。
|
||||
- `.tsl` 允许直接写语句,不要求顶层声明;文件名不强制,但建议清晰可检索。
|
||||
- 推荐文件名使用 `PascalCase` 以提升检索与协作一致性;扩展名按类型使用 `.tsl`/`.tsf`(两者都属于 TSL 源文件,风格规则一致)。
|
||||
- 详细约束与命名细则见 `docs/tsl/naming.md`。
|
||||
|
||||
|
|
@ -177,7 +178,8 @@ end;
|
|||
### 4.2 函数设计
|
||||
|
||||
- 签名尽量自解释:对外 API 的参数/返回值建议显式写类型注解;并用注释写清契约(可复用 3.2 的模板)。
|
||||
- 无返回值函数显式标注返回类型为 `void`。
|
||||
- 类型注解不支持 `xxx.xxx` 形式;使用单一类型名。
|
||||
- 无返回值函数显式标注返回类型为 `void`;`create`/`destroy` 作为构造/析构函数不写返回类型。
|
||||
|
||||
```tsl
|
||||
function Func(a: string; b: ClassName): void;
|
||||
|
|
|
|||
|
|
@ -32,8 +32,8 @@
|
|||
|
||||
## 3. 类型命名(Type Names)
|
||||
|
||||
TSL 的顶层声明只有三种:`class`、`unit`、`function`。
|
||||
因此文件基名必须与顶层声明同名(见“4. 文件命名与顶层声明”)。
|
||||
TSL 的顶层声明只有三种:`class`、`unit`、`function`(仅适用于 `.tsf`)。
|
||||
因此 `.tsf` 文件基名必须与顶层声明同名(见“4. 文件命名与顶层声明”)。
|
||||
|
||||
- **类(class)与单元(unit)**使用 `PascalCase`,不带下划线;名称应为名词/名词短语(通常单数),避免动词开头。
|
||||
- 不推荐 `*Unit` 作为 `unit` 的后缀(`unit` 本身已表达语义);需要表达用途时,可使用 `*Shared`/`*Common`/`*Enums` 等更具体后缀(按团队约定)。
|
||||
|
|
@ -42,13 +42,13 @@ TSL 的顶层声明只有三种:`class`、`unit`、`function`。
|
|||
|
||||
## 4. 文件命名与顶层声明(File Names)
|
||||
|
||||
TSL 的语法要求:每个文件只能有一个顶层声明,且**文件基名必须与该顶层声明名字一致**。
|
||||
TSL 的语法要求(仅 `.tsf`):每个 `.tsf` 文件只能有一个顶层声明,且**文件基名必须与该顶层声明名字一致**。
|
||||
|
||||
- 顶层声明可能是 `class`、`unit` 或 `function`(见类型命名)。
|
||||
- `.tsf` 代码文件:用于库/模块等“顶层声明”的承载文件;顶层声明可为 `class`/`unit`/`function`,文件基名需与之同名。
|
||||
- `.tsl` 脚本文件:用于入口/编排层;顶层声明只能是 `function`,因此文件基名 = 顶层函数名;可复用逻辑应下沉到 `.tsf`(见 `docs/tsl/code_style.md`)。
|
||||
- `.tsl` 脚本文件:用于入口/编排层;允许直接写语句(如 `a := 1; echo a;`),不要求顶层声明,也不强制文件基名与函数名一致;可复用逻辑应下沉到 `.tsf`(见 `docs/tsl/code_style.md`)。
|
||||
- 注:`.tsf` 也是 TSL 源文件,命名/风格与 `.tsl` 遵循同一套规则。
|
||||
- **硬规则**:重命名顶层声明时必须同步重命名文件基名,否则语法/加载规则无法识别;批量重命名可参考 `$bulk-refactor-workflow`。
|
||||
- **硬规则(仅 `.tsf`)**:重命名顶层声明时必须同步重命名文件基名,否则语法/加载规则无法识别;批量重命名可参考 `$bulk-refactor-workflow`。
|
||||
|
||||
命名建议:
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue