class HLCPPIncomingBody

Defined at line 29 of file ../../sdk/lib/fidl/hlcpp/include/lib/fidl/cpp/message.h

An incoming FIDL transactional message body.

A FIDL transactional message body has two parts: the |bytes| and the |handles|. The |bytes|

represent only the transactional message's body, and may be a view into a larger buffer that

is prepended by the transactional message's header bytes as well.

A HLCPPIncomingBody object does not own the storage for the message parts.

Public Methods

void HLCPPIncomingBody ()

Creates a message body without any storage.

Defined at line 39 of file ../../sdk/lib/fidl/hlcpp/message.cc

void HLCPPIncomingBody (BytePart bytes, HandleInfoPart handles)

Defined at line 41 of file ../../sdk/lib/fidl/hlcpp/message.cc

void ~HLCPPIncomingBody ()

Defined at line 44 of file ../../sdk/lib/fidl/hlcpp/message.cc

void HLCPPIncomingBody (const HLCPPIncomingBody & other)

Defined at line 49 of file ../../sdk/lib/fidl/hlcpp/include/lib/fidl/cpp/message.h

HLCPPIncomingBody & operator= (const HLCPPIncomingBody & other)

Defined at line 50 of file ../../sdk/lib/fidl/hlcpp/include/lib/fidl/cpp/message.h

void HLCPPIncomingBody (HLCPPIncomingBody && other)

Defined at line 51 of file ../../sdk/lib/fidl/hlcpp/message.cc

HLCPPIncomingBody & operator= (HLCPPIncomingBody && other)

Defined at line 54 of file ../../sdk/lib/fidl/hlcpp/message.cc

const BytePart & bytes ()

The storage for the bytes of the message body.

Defined at line 56 of file ../../sdk/lib/fidl/hlcpp/include/lib/fidl/cpp/message.h

zx_status_t Decode (const WireFormatMetadata & metadata, const fidl_type_t * type, const char ** error_msg_out)

Decodes the transactional message body in-place.

|metadata| describes features/revision information about the wire format.

Defined at line 60 of file ../../sdk/lib/fidl/hlcpp/message.cc

HandleInfoPart & handles ()

The storage for the handles of the message body.

When the message is encoded, the handle values are stored in this part of

the message. When the message is decoded, this part of the message is

empty and the handle values are stored in the bytes().

Defined at line 63 of file ../../sdk/lib/fidl/hlcpp/include/lib/fidl/cpp/message.h

const HandleInfoPart & handles ()

Defined at line 64 of file ../../sdk/lib/fidl/hlcpp/include/lib/fidl/cpp/message.h

template <typename T>
T * GetBytesAs ()

The message body bytes interpreted as the given type.

Defined at line 68 of file ../../sdk/lib/fidl/hlcpp/include/lib/fidl/cpp/message.h

void ClearHandlesUnsafe ()

Stop tracking the handles in stored in handles(), without closing them.

Typically, these handles will be extracted during decode or the

message's destructor, so this function will be unnecessary. However,

for clients of ulib/fidl which decode message manually, this function

is necessary to prevent extracted handles from being closed.

Defined at line 77 of file ../../sdk/lib/fidl/hlcpp/message.cc

Friends

class HLCPPOutgoingMessage
class HLCPPIncomingMessage