pub enum Merge2OpIO {
None,
Input0(i32),
Input1(i32),
Output0(i32),
}Variants§
Implementations§
Source§impl Merge2OpIO
impl Merge2OpIO
pub fn active_output_port(&self) -> Option<usize>
Trait Implementations§
Source§impl Clone for Merge2OpIO
impl Clone for Merge2OpIO
Source§fn clone(&self) -> Merge2OpIO
fn clone(&self) -> Merge2OpIO
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for Merge2OpIO
impl Debug for Merge2OpIO
Source§impl Default for Merge2OpIO
impl Default for Merge2OpIO
Source§impl Operator<Merge2OpIO> for Merge2Op
impl Operator<Merge2OpIO> for Merge2Op
Source§fn output_port_connection_required(&self, port: usize) -> bool
fn output_port_connection_required(&self, port: usize) -> bool
NOTE: typically, we do not require that outputs from any given operator be connected. perhaps this design choice may be changed in the future
Source§fn opcode(&self) -> Arc<dyn OpCode>
fn opcode(&self) -> Arc<dyn OpCode>
Returns the operation code, which can be used to inform
specialized handling or diagnostics.
Source§fn input_count(&self) -> usize
fn input_count(&self) -> usize
How many actual inputs does this operator need?
Source§fn output_count(&self) -> usize
fn output_count(&self) -> usize
How many outputs does this operator produce?
Source§fn input_port_type_str(&self, port: usize) -> Option<&'static str>
fn input_port_type_str(&self, port: usize) -> Option<&'static str>
used by the network! dag compiler to verify that the input port of one operator is
compatible with the data flowing into it from the output port of another operator
Source§fn output_port_type_str(&self, port: usize) -> Option<&'static str>
fn output_port_type_str(&self, port: usize) -> Option<&'static str>
used by the network! dag compiler to verify that the output port of one operator is
compatible with the data required by the input port of its downstream operator
Source§fn input_port_connection_required(&self, port: usize) -> bool
fn input_port_connection_required(&self, port: usize) -> bool
used by the network! dag compiler to verify that this input port needs an output connection
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
execute_inputs: [Option<&'life1 Merge2OpIO>; 4],
execute_outputs: &'life2 mut [Option<Merge2OpIO>; 4],
) -> Pin<Box<dyn Future<Output = NetResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
execute_inputs: [Option<&'life1 Merge2OpIO>; 4],
execute_outputs: &'life2 mut [Option<Merge2OpIO>; 4],
) -> Pin<Box<dyn Future<Output = NetResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
The big 4×4 method:
You receive up to 4 inputs and must fill up to 4 outputs.
Source§impl PartialEq for Merge2OpIO
impl PartialEq for Merge2OpIO
Source§impl PortTryFrom0<i32> for Merge2OpIO
impl PortTryFrom0<i32> for Merge2OpIO
type Error = NetworkError
fn port_try_from0(src: i32) -> Result<Self, Self::Error>
Source§impl PortTryFrom1<i32> for Merge2OpIO
impl PortTryFrom1<i32> for Merge2OpIO
type Error = NetworkError
fn port_try_from1(src: i32) -> Result<Self, Self::Error>
Source§impl PortTryFrom2<()> for Merge2OpIO
impl PortTryFrom2<()> for Merge2OpIO
type Error = NetworkError
fn port_try_from2(src: ()) -> Result<Self, Self::Error>
Source§impl PortTryFrom3<()> for Merge2OpIO
impl PortTryFrom3<()> for Merge2OpIO
type Error = NetworkError
fn port_try_from3(src: ()) -> Result<Self, Self::Error>
Source§impl PortTryInto0<i32> for Merge2OpIO
impl PortTryInto0<i32> for Merge2OpIO
type Error = NetworkError
Source§impl<'a> PortTryInto0Any for Merge2OpIOwhere
Merge2OpIO: 'a,
impl<'a> PortTryInto0Any for Merge2OpIOwhere
Merge2OpIO: 'a,
type Error = NetworkError
fn port_try_into0_any(self) -> Result<Erased, Self::Error>
Source§impl PortTryInto1<()> for Merge2OpIO
impl PortTryInto1<()> for Merge2OpIO
type Error = NetworkError
Source§impl<'a> PortTryInto1Any for Merge2OpIOwhere
Merge2OpIO: 'a,
impl<'a> PortTryInto1Any for Merge2OpIOwhere
Merge2OpIO: 'a,
type Error = NetworkError
fn port_try_into1_any(self) -> Result<Erased, Self::Error>
Source§impl PortTryInto2<()> for Merge2OpIO
impl PortTryInto2<()> for Merge2OpIO
type Error = NetworkError
Source§impl<'a> PortTryInto2Any for Merge2OpIOwhere
Merge2OpIO: 'a,
impl<'a> PortTryInto2Any for Merge2OpIOwhere
Merge2OpIO: 'a,
type Error = NetworkError
fn port_try_into2_any(self) -> Result<Erased, Self::Error>
Source§impl PortTryInto3<()> for Merge2OpIO
impl PortTryInto3<()> for Merge2OpIO
type Error = NetworkError
Source§impl<'a> PortTryInto3Any for Merge2OpIOwhere
Merge2OpIO: 'a,
impl<'a> PortTryInto3Any for Merge2OpIOwhere
Merge2OpIO: 'a,
type Error = NetworkError
fn port_try_into3_any(self) -> Result<Erased, Self::Error>
impl Eq for Merge2OpIO
impl StructuralPartialEq for Merge2OpIO
Auto Trait Implementations§
impl Freeze for Merge2OpIO
impl RefUnwindSafe for Merge2OpIO
impl Send for Merge2OpIO
impl Sync for Merge2OpIO
impl Unpin for Merge2OpIO
impl UnwindSafe for Merge2OpIO
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