GFNetworkContractGenerator¶
API Reference / Network / 类索引
- 路径:
addons/gf/extensions/network/editor/gf_network_contract_generator.gd - 模块:
Network - 继承:
RefCounted - API:
public - 类别:编辑器 API (
editor_api) - 首次版本:
3.17.0
根据 GFNetworkContract 生成强类型消息辅助脚本。 生成结果保持为 GDScript 轻量封装,围绕 GFNetworkMessage / GFNetworkUtility 提供构造、发送、匹配和 payload 读取函数,不绑定任何具体业务协议。
成员概览¶
| 类型 | 名称 | 签名 |
|---|---|---|
| 常量 | DEFAULT_OUTPUT_DIR |
const DEFAULT_OUTPUT_DIR: String = "res://gf/generated/network" |
| 方法 | generate |
func generate( contract: GFNetworkContract, output_path: String = "", overwrite_existing: bool = true, options: Dictionary = {} ) -> Error: |
| 方法 | generate_many |
func generate_many( contract_paths: PackedStringArray, output_dir: String = DEFAULT_OUTPUT_DIR, overwrite_existing: bool = true, options: Dictionary = {} ) -> Dictionary: |
| 方法 | build_source |
func build_source(contract: GFNetworkContract, options: Dictionary = {}) -> String: |
| 方法 | save_source |
func save_source(output_path: String, source: String, overwrite_existing: bool = true) -> Error: |
常量¶
DEFAULT_OUTPUT_DIR¶
- API:
public
默认生成脚本输出目录。
方法¶
generate¶
- API:
public
func generate( contract: GFNetworkContract, output_path: String = "", overwrite_existing: bool = true, options: Dictionary = {} ) -> Error:
生成单个契约访问器脚本。
参数:
| 名称 | 说明 |
|---|---|
contract |
网络契约资源。 |
output_path |
输出脚本路径;为空时按 contract_id 推导。 |
overwrite_existing |
为 false 时目标已存在会返回 ERR_ALREADY_EXISTS。 |
options |
可选项,支持 class_name。 |
返回:Godot 错误码。
结构:
options: Dictionary,支持 class_name。
generate_many¶
- API:
public
func generate_many( contract_paths: PackedStringArray, output_dir: String = DEFAULT_OUTPUT_DIR, overwrite_existing: bool = true, options: Dictionary = {} ) -> Dictionary:
批量生成多个契约访问器脚本。
参数:
| 名称 | 说明 |
|---|---|
contract_paths |
契约资源路径列表。 |
output_dir |
输出目录。 |
overwrite_existing |
为 false 时目标已存在会跳过。 |
options |
可选项。 |
返回:生成报告。
结构:
options: Dictionary,支持 class_name。return: Dictionary,GFValidationReportDictionary 格式,包含 ok、generated_count、attempted_count、generated、issues、issue_count 和 next_actions。
build_source¶
- API:
public
构建契约访问器源码。测试或项目工具可直接调用该方法。
参数:
| 名称 | 说明 |
|---|---|
contract |
网络契约资源。 |
options |
可选项,支持 class_name。 |
返回:GDScript 源码。
结构:
options: Dictionary,支持 class_name。
save_source¶
- API:
public
保存生成源码到指定路径。
参数:
| 名称 | 说明 |
|---|---|
output_path |
输出脚本路径。 |
source |
源码文本。 |
overwrite_existing |
为 false 时目标已存在会返回 ERR_ALREADY_EXISTS。 |
返回:Godot 错误码。