Skip to main content

refuse_without_readiness

Function refuse_without_readiness 

Source
pub fn refuse_without_readiness(
    session: CffiSession,
) -> Result<CffiSession, TransportError>
Expand description

phase-521 W6 (RFC-0113 D5) — a runtime session must state how it becomes ready: Notify (the backend calls the executor’s wake callback on an arrival) or Waitable (a handle the port parks on). A session that states neither could only be drained by blocking inside its own receive, which no deadline and no other session can end, so nano-ros cannot keep its real-time wait promise over it. It is refused at open, by name, instead of parked on blindly.

Every runtime open goes through CffiRmw (the executor’s, an extra session’s, the C/C++ support context’s), so this is the one place the rule is asked. CffiSession’s own constructors stay unchecked: they are the seam a backend’s own tests drive directly.