pub struct LinkableSynchronousProxy { /* private fields */ }Implementations§
Source§impl LinkableSynchronousProxy
impl LinkableSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
Sourcepub fn wait_for_event(
&self,
deadline: MonotonicInstant,
) -> Result<LinkableEvent, Error>
pub fn wait_for_event( &self, deadline: MonotonicInstant, ) -> Result<LinkableEvent, Error>
Waits until an event arrives and returns it. It is safe for other threads to make concurrent requests while waiting for an event.
Sourcepub fn link_into(
&self,
dst_parent_token: Event,
dst: &str,
___deadline: MonotonicInstant,
) -> Result<LinkableLinkIntoResult, Error>
pub fn link_into( &self, dst_parent_token: Event, dst: &str, ___deadline: MonotonicInstant, ) -> Result<LinkableLinkIntoResult, Error>
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.
Trait Implementations§
Source§impl Debug for LinkableSynchronousProxy
impl Debug for LinkableSynchronousProxy
Source§impl From<Channel> for LinkableSynchronousProxy
Available on Fuchsia only.
impl From<Channel> for LinkableSynchronousProxy
Source§impl From<LinkableSynchronousProxy> for Handle
Available on Fuchsia only.
impl From<LinkableSynchronousProxy> for Handle
Source§fn from(value: LinkableSynchronousProxy) -> Self
fn from(value: LinkableSynchronousProxy) -> Self
Source§impl FromClient for LinkableSynchronousProxy
Available on Fuchsia only.
impl FromClient for LinkableSynchronousProxy
Source§type Protocol = LinkableMarker
type Protocol = LinkableMarker
Source§fn from_client(value: ClientEnd<LinkableMarker>) -> Self
fn from_client(value: ClientEnd<LinkableMarker>) -> Self
Source§impl SynchronousProxy for LinkableSynchronousProxy
Available on Fuchsia only.
impl SynchronousProxy for LinkableSynchronousProxy
Source§type Proxy = LinkableProxy
type Proxy = LinkableProxy
Source§type Protocol = LinkableMarker
type Protocol = LinkableMarker
Proxy controls.