class NaturalEncoder

Defined at line 26 of file ../../sdk/lib/fidl/cpp/include/lib/fidl/cpp/natural_encoder.h

Protected Members

const CodingConfig * coding_config_
vector bytes_
zx_channel_iovec iovec_
fidl_handle_t[64] handles_
uint32_t handle_actual_
unique_ptr handle_metadata_
WireFormatVersion wire_format_
zx_status_t status_
const char * error_

Public Methods

void NaturalEncoder (const CodingConfig * coding_config)

Defined at line 26 of file ../../sdk/lib/fidl/cpp/natural_encoder.cc

void NaturalEncoder (const CodingConfig * coding_config, internal::WireFormatVersion wire_format)

Defined at line 28 of file ../../sdk/lib/fidl/cpp/natural_encoder.cc

size_t Alloc (size_t size)

Defined at line 32 of file ../../sdk/lib/fidl/cpp/natural_encoder.cc

void NaturalEncoder (NaturalEncoder && )

The move and copy constructors are deleted for performance reasons.

Removing usages of move constructors saved ~100ns from encode time (see fxrev.dev/682945).

Defined at line 35 of file ../../sdk/lib/fidl/cpp/include/lib/fidl/cpp/natural_encoder.h

NaturalEncoder & operator= (NaturalEncoder && )

Defined at line 36 of file ../../sdk/lib/fidl/cpp/include/lib/fidl/cpp/natural_encoder.h

void NaturalEncoder (const NaturalEncoder & )

Defined at line 37 of file ../../sdk/lib/fidl/cpp/include/lib/fidl/cpp/natural_encoder.h

NaturalEncoder & operator= (const NaturalEncoder & )

Defined at line 38 of file ../../sdk/lib/fidl/cpp/include/lib/fidl/cpp/natural_encoder.h

void ~NaturalEncoder ()

Defined at line 39 of file ../../sdk/lib/fidl/cpp/include/lib/fidl/cpp/natural_encoder.h

template <typename T>
T * GetPtr (size_t offset)

Defined at line 44 of file ../../sdk/lib/fidl/cpp/include/lib/fidl/cpp/natural_encoder.h

void EncodeHandle (fidl_handle_t handle, HandleAttributes attr, size_t offset, bool is_optional)

Defined at line 48 of file ../../sdk/lib/fidl/cpp/natural_encoder.cc

template <typename T>
const T * GetPtr (size_t offset)

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

size_t CurrentLength ()

Defined at line 55 of file ../../sdk/lib/fidl/cpp/include/lib/fidl/cpp/natural_encoder.h

size_t CurrentHandleCount ()

Defined at line 57 of file ../../sdk/lib/fidl/cpp/include/lib/fidl/cpp/natural_encoder.h

std::vector<uint8_t> TakeBytes ()

Defined at line 59 of file ../../sdk/lib/fidl/cpp/include/lib/fidl/cpp/natural_encoder.h

internal::WireFormatVersion wire_format ()

Defined at line 61 of file ../../sdk/lib/fidl/cpp/include/lib/fidl/cpp/natural_encoder.h

WireFormatMetadata wire_format_metadata ()

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

void SetError (const char * error)

Defined at line 67 of file ../../sdk/lib/fidl/cpp/include/lib/fidl/cpp/natural_encoder.h