pub fn force_driver(
engine: &mut StateEngine,
set: &mut DriverSet,
net: StateCellId,
value: FourStateValue,
) -> StateCellIdExpand description
force/release/deassign (ST-055), modeled as a synthetic,
singleton-partition dynamic driver: allocates one more DriverEntry
(Supply-strength, so it always wins outright per the lattice above,
matching force’s LRM override semantics), seeds its private contribution
cell with value, pushes it onto set.drivers, and returns its
StateCellId so the caller can later release_driver it.
net must be set’s own resolved cell (this module’s top doc comment,
deviation 1, explains why set itself must also be passed — net alone,
as the plan’s literal signature had it, gives this function no way to
reach the caller’s DriverSet at all). Checked with a real assert_eq!
(not debug_assert_eq!): this is a caller-contract precondition, not a
debug-only sanity check, and net would otherwise never be read by this
function’s body at all.