1. Overview
  2. Docs
Module type
Class type

The payload of a response message.

Wraps WIRE_PAYLOAD to deal with caps rather than attachments.

val snapshot_caps : t -> cap RO_array.t
val field : t -> Wire.Path.t -> cap option

field t path looks up path in the message and returns the capability at that index. Returns None if the field wasn't set. Returns a broken capability if an index was given but does not exist (i.e. the message is corrupted). Increases the ref-count on the result.

val with_caps : cap RO_array.t -> t -> t

with_caps caps t is a copy of t with a new set of capabilities. This is useful to implement TakeFromOtherQuestion, where the message is the same but embargoes may be needed, and to break cycles.

val release : t -> unit

release t frees all the capabilities attached to this message. It is safe to call this multiple times; only the first call has any effect.

val pp : t Fmt.t