Add required array element constraints

This commit is contained in:
2026-08-11 17:24:04 +09:00
parent 5a05da6fe4
commit 46b2b3b1b6
35 changed files with 6328 additions and 5042 deletions
@@ -124,6 +124,19 @@ String & /^a$/ & /^b$/
Host = IPv4Address;
```
## 配列制約
配列制約には要素制約が必須であり、`[...T]` と書く。
```dcdl
Names = [...String];
PositiveInts = [...(Int & > 0)];
```
複数の配列制約を `&` で合成した場合、各 concrete 要素へすべての要素制約を合成する。
要素が object schema の場合は、その schema に含まれる default も各要素へ適用される。
要素制約のない `Array` primitive type は存在しない。
## default
`default` は制約ではない。