#[repr(C)]pub struct aws_io_message {
pub allocator: *mut aws_allocator,
pub message_data: aws_byte_buf,
pub message_type: aws_io_message_type,
pub message_tag: c_int,
pub copy_mark: usize,
pub owning_channel: *mut aws_channel,
pub on_completion: aws_channel_on_message_write_completed_fn,
pub user_data: *mut c_void,
pub queueing_handle: aws_linked_list_node,
}Fields
allocator: *mut aws_allocatorAllocator used for the message and message data. If this is null, the message belongs to a pool or some other message manager.
message_data: aws_byte_bufBuffer containing the data for message
message_type: aws_io_message_typetype of the message. This is used for framework control messages. Currently the only type is AWS_IO_MESSAGE_APPLICATION_DATA
message_tag: c_intConveys information about the contents of message_data (e.g. cast the ptr to some type). If 0, it’s just opaque data.
copy_mark: usizeIn order to avoid excess allocations/copies, on a partial read or write, the copy mark is set to indicate how much of this message has already been processed or copied.
owning_channel: *mut aws_channelThe channel that the message is bound to.
on_completion: aws_channel_on_message_write_completed_fnInvoked by the channel once the entire message has been written to the data sink.
user_data: *mut c_voidarbitrary user data for the on_completion callback
queueing_handle: aws_linked_list_nodeit’s incredibly likely something is going to need to queue this, go ahead and make sure the list info is part of the original allocation.
Trait Implementations
sourceimpl Clone for aws_io_message
impl Clone for aws_io_message
sourcefn clone(&self) -> aws_io_message
fn clone(&self) -> aws_io_message
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more