pub enum TestWireIO<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> {
Show 14 variants
None,
AddOpIO(AddOpIO),
ConstantOpIO(ConstantOpIO<T>),
DoubleOutOpIO(DoubleOutOpIO),
FailingOperatorIO(FailingOperatorIO),
IncrementOperatorIO(IncrementOperatorIO),
Merge2OpIO(Merge2OpIO),
MultiplyOpIO(MultiplyOpIO),
NoOpOperatorIO(NoOpOperatorIO),
SingleChannelPassthroughOperatorIO(SingleChannelPassthroughOperatorIO<T>),
SingleValOpIO(SingleValOpIO),
SplitAndDoubleOpIO(SplitAndDoubleOpIO),
StreamyOperatorIO(StreamyOperatorIO<T>),
SinkOperatorIO(SinkOperatorIO<T>),
}
Variants§
None
AddOpIO(AddOpIO)
ConstantOpIO(ConstantOpIO<T>)
DoubleOutOpIO(DoubleOutOpIO)
FailingOperatorIO(FailingOperatorIO)
IncrementOperatorIO(IncrementOperatorIO)
Merge2OpIO(Merge2OpIO)
MultiplyOpIO(MultiplyOpIO)
NoOpOperatorIO(NoOpOperatorIO)
SingleChannelPassthroughOperatorIO(SingleChannelPassthroughOperatorIO<T>)
SingleValOpIO(SingleValOpIO)
SplitAndDoubleOpIO(SplitAndDoubleOpIO)
StreamyOperatorIO(StreamyOperatorIO<T>)
SinkOperatorIO(SinkOperatorIO<T>)
Implementations§
Source§impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> TestWireIO<T>
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> TestWireIO<T>
pub fn active_output_port(&self) -> Option<usize>
Sourcepub fn port_try_into_dynamic<__T>(&self) -> Result<__T, NetworkError>where
Self: PortTryInto0<__T, Error = NetworkError> + PortTryInto1<__T, Error = NetworkError> + PortTryInto2<__T, Error = NetworkError> + PortTryInto3<__T, Error = NetworkError>,
pub fn port_try_into_dynamic<__T>(&self) -> Result<__T, NetworkError>where
Self: PortTryInto0<__T, Error = NetworkError> + PortTryInto1<__T, Error = NetworkError> + PortTryInto2<__T, Error = NetworkError> + PortTryInto3<__T, Error = NetworkError>,
Combines active_output_port()
+ the correct port_try_intoN()
in one shot.
Trait Implementations§
Source§impl<T: Clone + Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Clone for TestWireIO<T>
impl<T: Clone + Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Clone for TestWireIO<T>
Source§fn clone(&self) -> TestWireIO<T>
fn clone(&self) -> TestWireIO<T>
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<T: Debug + Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Debug for TestWireIO<T>
impl<T: Debug + Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Debug for TestWireIO<T>
Source§impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Default for TestWireIO<T>
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Default for TestWireIO<T>
Source§fn default() -> TestWireIO<T>
fn default() -> TestWireIO<T>
Returns the “default value” for a type. Read more
Source§impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for AddOp
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for AddOp
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 output_port_connection_required(&self, port: usize) -> bool
fn output_port_connection_required(&self, port: usize) -> bool
used by the network! dag compiler to verify that this output port needs an input connection
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for ConstantOp<T>
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for ConstantOp<T>
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 output_port_connection_required(&self, port: usize) -> bool
fn output_port_connection_required(&self, port: usize) -> bool
used by the network! dag compiler to verify that this output port needs an input connection
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for DoubleOutOp
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for DoubleOutOp
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 output_port_connection_required(&self, port: usize) -> bool
fn output_port_connection_required(&self, port: usize) -> bool
used by the network! dag compiler to verify that this output port needs an input connection
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for FailingOperator
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for FailingOperator
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 output_port_connection_required(&self, port: usize) -> bool
fn output_port_connection_required(&self, port: usize) -> bool
used by the network! dag compiler to verify that this output port needs an input connection
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for IncrementOperator
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for IncrementOperator
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 output_port_connection_required(&self, port: usize) -> bool
fn output_port_connection_required(&self, port: usize) -> bool
used by the network! dag compiler to verify that this output port needs an input connection
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for Merge2Op
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for Merge2Op
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 output_port_connection_required(&self, port: usize) -> bool
fn output_port_connection_required(&self, port: usize) -> bool
used by the network! dag compiler to verify that this output port needs an input connection
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for MultiplyOp
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for MultiplyOp
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 output_port_connection_required(&self, port: usize) -> bool
fn output_port_connection_required(&self, port: usize) -> bool
used by the network! dag compiler to verify that this output port needs an input connection
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for NoOpOperator
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for NoOpOperator
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 output_port_connection_required(&self, port: usize) -> bool
fn output_port_connection_required(&self, port: usize) -> bool
used by the network! dag compiler to verify that this output port needs an input connection
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for SingleChannelPassthroughOperator<T>
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for SingleChannelPassthroughOperator<T>
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 output_port_connection_required(&self, port: usize) -> bool
fn output_port_connection_required(&self, port: usize) -> bool
used by the network! dag compiler to verify that this output port needs an input connection
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for SingleValOp
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for SingleValOp
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 output_port_connection_required(&self, port: usize) -> bool
fn output_port_connection_required(&self, port: usize) -> bool
used by the network! dag compiler to verify that this output port needs an input connection
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for SinkOperator<T>
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for SinkOperator<T>
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 output_port_connection_required(&self, port: usize) -> bool
fn output_port_connection_required(&self, port: usize) -> bool
used by the network! dag compiler to verify that this output port needs an input connection
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for SplitAndDoubleOp
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for SplitAndDoubleOp
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 output_port_connection_required(&self, port: usize) -> bool
fn output_port_connection_required(&self, port: usize) -> bool
used by the network! dag compiler to verify that this output port needs an input connection
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for StreamyOperator<T>
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Operator<TestWireIO<T>> for StreamyOperator<T>
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 output_port_connection_required(&self, port: usize) -> bool
fn output_port_connection_required(&self, port: usize) -> bool
used by the network! dag compiler to verify that this output port needs an input connection
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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,
input: [Option<&'life1 TestWireIO<T>>; 4],
output: &'life2 mut [Option<TestWireIO<T>>; 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<T: PartialEq + Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> PartialEq for TestWireIO<T>
impl<T: PartialEq + Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> PartialEq for TestWireIO<T>
Source§impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq, X> PortTryInto0<X> for TestWireIO<T>where
X: Clone,
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq, X> PortTryInto0<X> for TestWireIO<T>where
X: Clone,
type Error = NetworkError
Source§fn port_try_into0(self) -> Result<X, NetworkError>
fn port_try_into0(self) -> Result<X, NetworkError>
Convert
self
into a T
, using port
as needed.Source§impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq, X> PortTryInto1<X> for TestWireIO<T>where
X: Clone,
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq, X> PortTryInto1<X> for TestWireIO<T>where
X: Clone,
type Error = NetworkError
Source§fn port_try_into1(self) -> Result<X, NetworkError>
fn port_try_into1(self) -> Result<X, NetworkError>
Convert
self
into a T
, using port
as needed.Source§impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq, X> PortTryInto2<X> for TestWireIO<T>where
X: Clone,
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq, X> PortTryInto2<X> for TestWireIO<T>where
X: Clone,
type Error = NetworkError
Source§fn port_try_into2(self) -> Result<X, NetworkError>
fn port_try_into2(self) -> Result<X, NetworkError>
Convert
self
into a T
, using port
as needed.Source§impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq, X> PortTryInto3<X> for TestWireIO<T>where
X: Clone,
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq, X> PortTryInto3<X> for TestWireIO<T>where
X: Clone,
type Error = NetworkError
Source§fn port_try_into3(self) -> Result<X, NetworkError>
fn port_try_into3(self) -> Result<X, NetworkError>
Convert
self
into a T
, using port
as needed.impl<T: Eq + Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> Eq for TestWireIO<T>
impl<T: Zero + Display + Copy + Debug + Send + Sync + PartialEq + Eq> StructuralPartialEq for TestWireIO<T>
Auto Trait Implementations§
impl<T> Freeze for TestWireIO<T>where
T: Freeze,
impl<T> RefUnwindSafe for TestWireIO<T>where
T: RefUnwindSafe,
impl<T> Send for TestWireIO<T>
impl<T> Sync for TestWireIO<T>
impl<T> Unpin for TestWireIO<T>where
T: Unpin,
impl<T> UnwindSafe for TestWireIO<T>where
T: UnwindSafe,
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