class Flags

Defined at line 22 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

Flags used to specify how a node should be opened. Note that ranges of bits are reserved

for specific use cases:

* Bits 1-16: Permission flags `PERM_*` (e.g. [`Flags.PERM_READ_BYTES`]).

* Bits 17-32: POSIX compatibile `O_*` flags (e.g. [`Flags.FILE_TRUNCATE`] or `O_TRUNC`).

* Bits 33-64: Fuchsia-specific flags.

|Flags| is flexible, hence may contain unknown members not

defined in the FIDL schema.

Public Members

static Flags PERM_CONNECT
static Flags PERM_READ_BYTES
static Flags PERM_WRITE_BYTES
static Flags PERM_EXECUTE
static Flags PERM_GET_ATTRIBUTES
static Flags PERM_UPDATE_ATTRIBUTES
static Flags PERM_ENUMERATE
static Flags PERM_TRAVERSE
static Flags PERM_MODIFY_DIRECTORY
static Flags PERM_INHERIT_WRITE
static Flags PERM_INHERIT_EXECUTE
static Flags PROTOCOL_SERVICE
static Flags PROTOCOL_NODE
static Flags PROTOCOL_DIRECTORY
static Flags PROTOCOL_FILE
static Flags FLAG_SEND_REPRESENTATION
static Flags FLAG_MAYBE_CREATE
static Flags FLAG_MUST_CREATE
static Flags FLAG_CREATE_AS_UNNAMED_TEMPORARY
static Flags FILE_APPEND
static Flags FILE_TRUNCATE
static Flags kMask

Public Methods

void Flags ()

Defined at line 24 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

std::optional<Flags> TryFrom (uint64_t value)

Constructs an instance of |Flags| from an underlying primitive value

if the primitive does not contain any unknown members not defined in the

FIDL schema. Otherwise, returns |std::nullopt|.

Defined at line 29 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

Flags TruncatingUnknown (uint64_t value)

Constructs an instance of |Flags| from an underlying primitive value,

clearing any bit member not defined in the FIDL schema.

Defined at line 38 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

void Flags (uint64_t value)

Constructs an instance of |Flags| from an underlying primitive value,

preserving any bit member not defined in the FIDL schema.

Defined at line 44 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

uint64_t operator unsigned long ()

Defined at line 69 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

bool operator bool ()

Defined at line 70 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

bool operator== (const Flags & other)

Defined at line 71 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

bool operator!= (const Flags & other)

Defined at line 72 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

Flags unknown_bits ()

Defined at line 80 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

bool has_unknown_bits ()

Defined at line 83 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

Flags operator~ ()

Defined at line 116 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

Flags operator| (const Flags & other)

Defined at line 120 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

Flags operator& (const Flags & other)

Defined at line 125 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

Flags operator^ (const Flags & other)

Defined at line 130 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

void operator|= (const Flags & other)

Defined at line 135 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

void operator&= (const Flags & other)

Defined at line 140 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h

void operator^= (const Flags & other)

Defined at line 145 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/hlcpp/fuchsia/io/cpp/fidl.h