Skip to main content

Module cell

Module cell 

Source
Expand description

Cells: frozen, immutable artifacts produced by freezing a CellBuilder.

Invariants held after CellBuilder::freeze:

  • content_hash is a deterministic blake3 of the canonical encoding. Same shapes/instances/ports/properties → same hash, byte-stable across runs and platforms.
  • local_bbox is the union of shape bboxes (instance subtrees not included).
  • shapes keys are sorted by LayerIndex; per-layer shape order is the insertion order from the builder, but hashing sorts canonically.
  • instances, ports, properties are stored in insertion order; hashing sorts canonically. UI/IO consumers may sort if they care.

Mutation after freeze is impossible — there is no public &mut Cell.

Structs§

Cell
CellBuilder
CellId
CellName
ShapeBag