ConstraintCollection

ConstraintCollection#

class ConstraintCollection#

Live, read-only mapping of all active constraint families. Values are write-through attached handles.

Keys must be typed constraint IDs; integers raise TypeError. Missing IDs raise KeyError. The view keeps its owner alive and observes subsequent owner mutations.

__contains__(key: object) → bool#
__eq__(other: Any) → Any#
__getitem__(key: ConstraintID) → AttachedConstraint#
__getitem__(key: IndicatorConstraintID) → AttachedIndicatorConstraint
__getitem__(key: OneHotConstraintID) → AttachedOneHotConstraint
__getitem__(key: Sos1ConstraintID) → AttachedSos1Constraint
__getitem__(key: ConstraintIDBase) → ConstraintView

Fetch the constraint identified by a typed ID from the current owner.

__iter__() → Iterator[ConstraintIDBase]#

Iterate a snapshot of typed IDs; constraint rows are not collected.

__len__() → int#
__repr__() → str#
get(key: ConstraintID, default: None = None) → AttachedConstraint | None#
get(key: ConstraintID, default: _T) → AttachedConstraint | _T
get(key: IndicatorConstraintID, default: None = None) → AttachedIndicatorConstraint | None
get(key: IndicatorConstraintID, default: _T) → AttachedIndicatorConstraint | _T
get(key: OneHotConstraintID, default: None = None) → AttachedOneHotConstraint | None
get(key: OneHotConstraintID, default: _T) → AttachedOneHotConstraint | _T
get(key: Sos1ConstraintID, default: None = None) → AttachedSos1Constraint | None
get(key: Sos1ConstraintID, default: _T) → AttachedSos1Constraint | _T
get(key: ConstraintIDBase, default: None = None) → ConstraintView | None
get(key: ConstraintIDBase, default: ConstraintView) → ConstraintView
get(key: ConstraintIDBase, default: _T) → ConstraintView | _T
items() → ItemsView[ConstraintIDBase, ConstraintView]#

Live item view; each row is fetched when visited.

keys() → KeysView[ConstraintIDBase]#

Live key view. Iteration order is family order, then numeric ID.

of_kind(kind: Literal["regular"]) → ConstraintFamilyView[ConstraintID, AttachedConstraint]#
of_kind(kind: Literal["indicator"]) → ConstraintFamilyView[IndicatorConstraintID, AttachedIndicatorConstraint]
of_kind(kind: Literal["one_hot"]) → ConstraintFamilyView[OneHotConstraintID, AttachedOneHotConstraint]
of_kind(kind: Literal["sos1"]) → ConstraintFamilyView[Sos1ConstraintID, AttachedSos1Constraint]

Return a live view of one family without collecting rows. Uses the same kind strings as constraints_df. Integer keys are promoted; wrong-family IDs are rejected. The view retains this collection and its owner; row lifecycle and iteration snapshot rules match the original collection.

values() → ValuesView[ConstraintView]#

Live value view; each row is fetched when visited.