Struct protoflow_blocks::WriteStdout
source · pub struct WriteStdout {
pub input: InputPort<Bytes>,
}Expand description
A block that writes bytes to standard output (aka stdout).
§Block Diagram
block-beta
columns 4
Source space:2 WriteStdout
Source-- "input" -->WriteStdout
classDef block height:48px,padding:8px;
classDef hidden visibility:none;
class WriteStdout block
class Source hidden
§Sequence Diagram
sequenceDiagram
autonumber
participant BlockA as Another block
participant WriteStdout.input as WriteStdout.input port
participant WriteStdout as WriteStdout block
BlockA-->>WriteStdout: Connect
loop WriteStdout process
BlockA->>WriteStdout: Message (Bytes)
WriteStdout->>WriteStdout: Write bytes to standard output
end
BlockA-->>WriteStdout: Disconnect
WriteStdout-->>WriteStdout.input: Close
§Examples
§Using the block in a system
System::build(|s| {
let stdin = s.read_stdin();
let stdout = s.write_stdout();
s.connect(&stdin.output, &stdout.input);
});§Running the block via the CLI
$ protoflow execute WriteStdout < input.txt > output.txt
Fields§
§input: InputPort<Bytes>The input message stream.
Implementations§
Trait Implementations§
source§impl Block for WriteStdout
impl Block for WriteStdout
source§fn execute(&mut self, runtime: &dyn BlockRuntime) -> BlockResult
fn execute(&mut self, runtime: &dyn BlockRuntime) -> BlockResult
Executes this block’s computation.
source§fn prepare(&mut self, _runtime: &dyn BlockRuntime) -> Result<(), BlockError>
fn prepare(&mut self, _runtime: &dyn BlockRuntime) -> Result<(), BlockError>
Prepares this block for execution. Read more
source§impl BlockDescriptor for WriteStdout
impl BlockDescriptor for WriteStdout
source§fn inputs(&self) -> Vec<PortDescriptor>
fn inputs(&self) -> Vec<PortDescriptor>
A description of this block’s input ports.
source§fn outputs(&self) -> Vec<PortDescriptor>
fn outputs(&self) -> Vec<PortDescriptor>
A description of this block’s output ports.
source§fn parameters(&self) -> Vec<ParameterDescriptor>
fn parameters(&self) -> Vec<ParameterDescriptor>
A description of this block’s parameters.
source§impl Clone for WriteStdout
impl Clone for WriteStdout
source§fn clone(&self) -> WriteStdout
fn clone(&self) -> WriteStdout
Returns a copy 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 Definition for WriteStdout
impl Definition for WriteStdout
fn is_variation(&self) -> bool
source§impl Element for WriteStdout
impl Element for WriteStdout
source§fn short_name(&self) -> Option<&str>
fn short_name(&self) -> Option<&str>
The short name of the element, if any.
source§fn is_library_element(&self) -> bool
fn is_library_element(&self) -> bool
Whether this
Element is contained in the ownership tree of
a library model.source§fn owning_namespace(&self) -> Option<&dyn Namespace>
fn owning_namespace(&self) -> Option<&dyn Namespace>
source§fn owning_relationship(&self) -> Option<&dyn Relationship>
fn owning_relationship(&self) -> Option<&dyn Relationship>
fn qualified_name(&self) -> Option<QualifiedName>
source§impl MaybeLabeled for WriteStdout
impl MaybeLabeled for WriteStdout
source§impl MaybeNamed for WriteStdout
impl MaybeNamed for WriteStdout
source§impl Namespace for WriteStdout
impl Namespace for WriteStdout
source§impl OccurrenceDefinition for WriteStdout
impl OccurrenceDefinition for WriteStdout
fn is_individual(&self) -> bool
source§impl StdioSystem for WriteStdout
impl StdioSystem for WriteStdout
fn build_system(_config: StdioConfig) -> Result<System, StdioError>
source§impl Type for WriteStdout
impl Type for WriteStdout
fn is_abstract(&self) -> bool
fn is_sufficient(&self) -> bool
fn is_conjugated(&self) -> bool
fn specializes(&self, _supertype: &Self) -> bool
impl BlockDefinition for WriteStdout
impl Class for WriteStdout
impl Classifier for WriteStdout
impl ItemDefinition for WriteStdout
impl PartDefinition for WriteStdout
impl Structure for WriteStdout
Auto Trait Implementations§
impl Freeze for WriteStdout
impl !RefUnwindSafe for WriteStdout
impl Send for WriteStdout
impl Sync for WriteStdout
impl Unpin for WriteStdout
impl !UnwindSafe for WriteStdout
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)