pub struct EncodeJson {
pub input: InputPort<Value>,
pub output: OutputPort<Bytes>,
}Expand description
A block that encodes messages into JSON format.
§Block Diagram
block-beta
columns 7
Source space:2 EncodeHex space:2 Sink
Source-- "input" -->EncodeHex
EncodeHex-- "output" -->Sink
classDef block height:48px,padding:8px;
classDef hidden visibility:none;
class EncodeHex block
class Source hidden
class Sink hidden
§Sequence Diagram
sequenceDiagram
autonumber
participant BlockA as Another block
participant EncodeHex.input as EncodeHex.input port
participant EncodeHex as EncodeHex block
participant EncodeHex.output as EncodeHex.output port
participant BlockB as Another block
BlockA-->>EncodeHex: Connect
EncodeHex-->>BlockB: Connect
loop EncodeHex process
BlockA->>EncodeHex: Message (Bytes)
EncodeHex->>EncodeHex: Encode into hexadecimal
EncodeHex->>BlockB: Message (Bytes)
end
BlockA-->>EncodeHex: Disconnect
EncodeHex-->>EncodeHex.input: Close
EncodeHex-->>EncodeHex.output: Close
EncodeHex-->>BlockB: Disconnect
§Examples
§Using the block in a system
System::build(|s| {
// TODO
});§Running the block via the CLI
$ protoflow execute EncodeJSONFields§
§input: InputPort<Value>The input message stream.
output: OutputPort<Bytes>The output byte stream.
Implementations§
Source§impl EncodeJson
impl EncodeJson
pub fn new(input: InputPort<Value>, output: OutputPort<Bytes>) -> Self
pub fn with_system(system: &System) -> Self
Trait Implementations§
Source§impl Block for EncodeJson
impl Block for EncodeJson
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 EncodeJson
impl BlockDescriptor for EncodeJson
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§fn ports(&self) -> Vec<PortDescriptor>
fn ports(&self) -> Vec<PortDescriptor>
A description of this block’s I/O ports.
Source§impl Clone for EncodeJson
impl Clone for EncodeJson
Source§fn clone(&self) -> EncodeJson
fn clone(&self) -> EncodeJson
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 MaybeLabeled for EncodeJson
impl MaybeLabeled for EncodeJson
Source§impl MaybeNamed for EncodeJson
impl MaybeNamed for EncodeJson
Source§impl StdioSystem for EncodeJson
impl StdioSystem for EncodeJson
fn build_system(config: StdioConfig) -> Result<System, StdioError>
Auto Trait Implementations§
impl Freeze for EncodeJson
impl !RefUnwindSafe for EncodeJson
impl Send for EncodeJson
impl Sync for EncodeJson
impl Unpin for EncodeJson
impl !UnwindSafe for EncodeJson
Blanket Implementations§
Source§impl<T> AsBlockDescriptor for Twhere
T: BlockDescriptor,
impl<T> AsBlockDescriptor for Twhere
T: BlockDescriptor,
fn as_block_descriptor(&self) -> &dyn BlockDescriptor
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