pub struct RouteReading {
pub new_loop_faces: Vec<(u64, Option<String>)>,
pub unreadable: Vec<(u64, Option<String>, String)>,
}Expand description
What a Move Face would have to do to the TOPOLOGY, read off the motion before anything is built.
Fields§
§new_loop_faces: Vec<(u64, Option<String>)>Faces that do not bound the moved group today and whose trimmed region a moved carrier would pass through — the faces that would have to receive a loop they do not have.
unreadable: Vec<(u64, Option<String>, String)>Faces whose section against a moved carrier could not be COMPUTED.
These are not “no”, they are “unknown”, and they are reported rather than folded into the negative: an intersection that fails silently would make this predicate answer NO for a face it never managed to ask about, which is the difference between a measurement and an instrument that cannot report a negative. A caller that routes on this must treat a non-empty list as a refusal rather than as a clean read.
Implementations§
Source§impl RouteReading
impl RouteReading
Sourcepub fn needs_rebuild(&self) -> bool
pub fn needs_rebuild(&self) -> bool
The routing decision itself: a motion that would put a boundary on a face that has none cannot be answered by re-solving the existing topology’s geometry, because there is no loop there to re-solve.
Sourcepub fn is_complete(&self) -> bool
pub fn is_complete(&self) -> bool
Whether every face was actually ASKED. A reading with unreadable faces has not established the negative for those faces.