GFConfigBuildProfile¶
API Reference / Standard / 类索引
- 路径:
addons/gf/standard/utilities/config/gf_config_build_profile.gd - 模块:
Standard - 继承:
Resource - API:
public - 类别:资源定义 (
resource_definition) - 首次版本:
3.17.0
配置表构建过滤配置。 用 groups 与 tags 描述一组通用过滤条件,可用于导出前裁剪 schema 或记录。 具体分组名称由项目决定,GF 不内置 client、server 或 editor 语义。
成员概览¶
| 类型 | 名称 | 签名 |
|---|---|---|
| 属性 | profile_id |
var profile_id: StringName = &"" |
| 属性 | include_groups |
var include_groups: PackedStringArray = PackedStringArray() |
| 属性 | exclude_groups |
var exclude_groups: PackedStringArray = PackedStringArray() |
| 属性 | include_tags |
var include_tags: PackedStringArray = PackedStringArray() |
| 属性 | exclude_tags |
var exclude_tags: PackedStringArray = PackedStringArray() |
| 属性 | default_include |
var default_include: bool = true |
| 属性 | record_metadata_field |
var record_metadata_field: StringName = &"_metadata" |
| 属性 | groups_key |
var groups_key: StringName = &"groups" |
| 属性 | tags_key |
var tags_key: StringName = &"tags" |
| 属性 | metadata |
var metadata: Dictionary = {} |
| 方法 | allows_metadata |
func allows_metadata(source_metadata: Dictionary) -> bool: |
| 方法 | filter_schema |
func filter_schema(schema: GFConfigTableSchema) -> GFConfigTableSchema: |
| 方法 | filter_records |
func filter_records(table_data: Variant) -> Variant: |
| 方法 | duplicate_profile |
func duplicate_profile() -> GFConfigBuildProfile: |
| 方法 | describe |
func describe() -> Dictionary: |
属性¶
profile_id¶
- API:
public
Profile 稳定标识。
include_groups¶
- API:
public
为空时不限制包含分组;非空时 metadata 至少命中一个分组才通过。
exclude_groups¶
- API:
public
命中任意排除分组时过滤。
include_tags¶
- API:
public
为空时不限制包含标签;非空时 metadata 至少命中一个标签才通过。
exclude_tags¶
- API:
public
命中任意排除标签时过滤。
default_include¶
- API:
public
metadata 缺少 groups/tags 时是否默认保留。
record_metadata_field¶
- API:
public
记录中存放元数据的字段名。
groups_key¶
- API:
public
metadata 中表示分组的键。
tags_key¶
- API:
public
metadata 中表示标签的键。
metadata¶
- API:
public
可选元数据,供项目工具扩展使用。
结构:
metadata: Dictionary,保存项目工具附加到当前构建 Profile 的元数据。
方法¶
allows_metadata¶
- API:
public
判断一份 metadata 是否通过当前 Profile。
参数:
| 名称 | 说明 |
|---|---|
source_metadata |
待检查元数据。 |
返回:通过时返回 true。
结构:
source_metadata: Dictionary,包含可选 groups_key / tags_key 条目,值可为字符串或字符串数组。
filter_schema¶
- API:
public
过滤 schema,返回 schema 副本。
参数:
| 名称 | 说明 |
|---|---|
schema |
原 schema。 |
返回:过滤后的 schema;schema 为空时返回 null。
filter_records¶
- API:
public
过滤表记录。
参数:
| 名称 | 说明 |
|---|---|
table_data |
Array[Dictionary] 或 Dictionary 表。 |
返回:与输入同形状的过滤结果;输入无效时返回原值副本。
结构:
table_data: Variant,支持 Array[Dictionary]、Dictionary 表;其他值会按原形复制返回。return: Variant,过滤后的表数据;有效表会保持输入容器形态。
duplicate_profile¶
- API:
public
创建同内容拷贝。
返回:新 Profile。
describe¶
- API:
public
导出 Profile 摘要。
返回:Profile 摘要字典。
结构:
return: Dictionary,包含 profile_id、分组/标签过滤器、元数据键设置和 metadata。