Add type intersection expressions (#948)
Given a schema:
```edgeql
type Inh_A { a: int64; };
type Inh_B { b: int64; };
type Inh_C { c: int64; };
type Inh_AB extending Inh_A, Inh_B { ab: int64; };
type Inh_AC extending Inh_A, Inh_C { ac: int64; };
type Inh_BC extending Inh_B, Inh_C { bc: int64; };
type Inh_ABC extending Inh_A, Inh_B, Inh_C { abc: int64; };
type Inh_AB_AC extending Inh_AB, Inh_AC { ab_ac: int64; };
```
Supports queries such as:
```py
client.query(
default.Inh_A.when_type(default.Inh_B).is_(default.Inh_C)
)
client.query(
default.Inh_AB.select(a=lambda x: x.is_(default.Inh_C).c)
)
``` D
dnwpark committed
17035e8edf3114b63203de1e0029962878290d97
Parent: b5ceeea
Committed by GitHub <noreply@github.com>
on 10/21/2025, 1:13:19 AM