namespace GFramework.Game.Config;
///
/// 表示数组节点声明的 contains 匹配约束。
/// 该模型把 contains 子 schema 与匹配数量边界聚合在一起,避免数组节点再额外散落多组相关成员。
///
internal sealed class YamlConfigArrayContainsConstraints
{
///
/// 初始化数组 contains 约束模型。
///
/// contains 子 schema。
/// 最小匹配数量;为 时按 JSON Schema 语义默认 1。
/// 最大匹配数量。
public YamlConfigArrayContainsConstraints(
YamlConfigSchemaNode containsNode,
int? minContains,
int? maxContains)
{
ArgumentNullException.ThrowIfNull(containsNode);
ContainsNode = containsNode;
MinContains = minContains;
MaxContains = maxContains;
}
///
/// 获取 contains 子 schema。
///
public YamlConfigSchemaNode ContainsNode { get; }
///
/// 获取最小匹配数量;未显式声明时返回空,由调用方按默认值 1 解释。
///
public int? MinContains { get; }
///
/// 获取最大匹配数量。
///
public int? MaxContains { get; }
}