class MessagePort

Defined at line 12665 of file fidling/gen/sdk/fidl/fuchsia.web/fuchsia.web/hlcpp/fuchsia/web/cpp/fidl.h

Represents one end of an HTML5 MessageChannel. Can be used to send and exchange Messages with

the peered MessagePort in the Frame's script context. The port is destroyed when either end of

the MessagePort channel is torn down.

Public Methods

void ~MessagePort ()
void PostMessage (::fuchsia::web::WebMessage message, PostMessageCallback callback)

Sends a [`WebMessage`] to the peer. These are processed in order, one at a

time. It is not necessary for the caller to wait for the completion callback before calling

[`MessagePort.PostMessage`] again.

If an error occurred, the [`FrameError`] will be set to one of these value:

- `BUFFER_NOT_UTF8`: The script in `message`'s `data` property is not UTF-8 encoded.

- `NO_DATA_IN_MESSAGE`: The `data` property is missing in `message`.

void ReceiveMessage (ReceiveMessageCallback callback)

Asynchronously reads the next message from the channel. The client should invoke the

callback when it is ready to process another message. Unreceived messages are buffered

on the sender's side and bounded by its available resources.