pub struct Contract {
pub inputs: Arc<PortTable>,
pub outputs: Arc<PortTable>,
pub input_types: Vec<u64>,
pub output_types: Vec<u64>,
pub required_side_packets: Vec<String>,
/* private fields */
}Expand description
A kernel’s port contract: payload-type constraints plus required side packets.
Port counts and names come from YAML and are already known when the contract is built; the kernel only fills in the types.
Fields§
§inputs: Arc<PortTable>§outputs: Arc<PortTable>§input_types: Vec<u64>0 = 未声明(接受任意类型)
output_types: Vec<u64>§required_side_packets: Vec<String>Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Contract
impl RefUnwindSafe for Contract
impl Send for Contract
impl Sync for Contract
impl Unpin for Contract
impl UnsafeUnpin for Contract
impl UnwindSafe for Contract
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more