cottax.consumers.architectures.refusals module¶
Why an architecture is refused: a top the model does not hold or that is no problem, two problems sharing a body with neither inside the other, what it would fold combining as another kind, a model already nested; and two closures bound at one name. Why a problem is no implicit model is its language’s.
- class TopUnbound(top: str)[source]¶
Bases:
Violation- top: str¶
- template: AbstractClassVar[str] = '{top} is no node of the model: the top is a problem the model declares -- declare it with the rest, or name the slot it is in'¶
e.g. ‘output {place!r} is owned by both {other!r} and {node!r}’
- Type:
Wording
- class TopNotAProblem(top: str)[source]¶
Bases:
Violation- top: str¶
- template: AbstractClassVar[str] = '{top} is not a problem: an architecture resolves what lies under a problem'¶
e.g. ‘output {place!r} is owned by both {other!r} and {node!r}’
- Type:
Wording
- class NotCombinable(problem: str, kind: str, architecture: str, into: str)[source]¶
Bases:
Violation- problem: str¶
- kind: str¶
- architecture: str¶
- into: str¶
- template: AbstractClassVar[str] = '{problem} combines as {kind}, and {architecture} combines it into {into}: only what combines as one kind is combined'¶
e.g. ‘output {place!r} is owned by both {other!r} and {node!r}’
- Type:
Wording
Bases:
Violatione.g. ‘output {place!r} is owned by both {other!r} and {node!r}’
- Type:
Wording
- class NestedAlready(pairs: tuple)[source]¶
Bases:
Violation- pairs: tuple¶
- template: AbstractClassVar[str] = '{pairs!r} already nested: an architecture places every problem itself, over a model with no nesting -- `Unnest` first, or start from the model'¶
e.g. ‘output {place!r} is owned by both {other!r} and {node!r}’
- Type:
Wording
- class ClosuresCollide(names: tuple)[source]¶
Bases:
Violation- names: tuple¶
- template: AbstractClassVar[str] = 'two closures bound at {names!r}: the `At` names two groups alike -- one closure per cycle under `AtFirstMember`: cut it as one group, or write an `At` naming them apart'¶
e.g. ‘output {place!r} is owned by both {other!r} and {node!r}’
- Type:
Wording