pub type LinkableProxy = ClientSender<Channel, Linkable>;
Expand description
An alias for a client sender over zx::Channel
for the Linkable
protocol.
Aliased Type§
struct LinkableProxy { /* private fields */ }
Implementations
§impl<T, P> ClientSender<T, P>where
T: Transport,
impl<T, P> ClientSender<T, P>where
T: Transport,
pub fn wrap_untyped(client: &ClientSender<T>) -> &ClientSender<T, P>
pub fn wrap_untyped(client: &ClientSender<T>) -> &ClientSender<T, P>
Wraps an untyped sender reference, returning a typed sender reference.
pub fn as_untyped(&self) -> &ClientSender<T>
pub fn as_untyped(&self) -> &ClientSender<T>
Returns the underlying untyped sender.
pub fn close(&self)
pub fn close(&self)
Closes the channel from the client end.
Trait Implementations
Source§impl<___T> LinkableClientSender for ClientSender<___T, Linkable>where
___T: Transport,
impl<___T> LinkableClientSender for ClientSender<___T, Linkable>where
___T: Transport,
Source§fn link_into<___R>(
&self,
request: ___R,
) -> Result<ResponseFuture<'_, Self::Transport, LinkInto>, EncodeError>where
___R: Encode<<Self::Transport as Transport>::SendBuffer, Encoded = WireLinkableLinkIntoRequest<'static>>,
fn link_into<___R>(
&self,
request: ___R,
) -> Result<ResponseFuture<'_, Self::Transport, LinkInto>, EncodeError>where
___R: Encode<<Self::Transport as Transport>::SendBuffer, Encoded = WireLinkableLinkIntoRequest<'static>>,
Creates a link to this this object with name dst
in the directory represented by
dst_parent_token
.
dst
must be a resolved object name. Including “/” in the string will return
ZX_ERR_INVALID_ARGS
.
This method requires the maximal set of rights supported by the filesystem for this object.
For files this would typically be [Rights.READ_BYTES
], [Rights.WRITE_BYTES
],
[Rights.GET_ATTRIBUTES
] and [Rights.UPDATE_ATTRIBUTES
]. Some filesystems might also
support the [Rights.EXECUTE
] right. Insufficient rights will result in
ZX_ERR_ACCESS_DENIED
.
If this object has no links and is NOT an unnamed temporary object (objects opened with
Flags.FLAG_CREATE_AS_UNNAMED_TEMPORARY
), it will fail with ZX_ERR_NOT_FOUND
.
For unnamed temporary objects, use LinkInto to give it a name. Upon successful completion,
the object will be permanently linked to the filesystem. Requires that the unnamed temporary
object is linkable, if not, it will fail with ZX_ERR_NOT_FOUND
.
This method does not have the same atomicity properties has the Directory::Link
method,
which means that calling Open
then LinkInto
is not equivalent to Directory::Link
because LinkInto
will not prevent the source from being renamed or unlinked.