pub struct Resolver;Expand description
The type corresponding to the Resolver protocol. An interface for resolving names to executables and library loaders.
An executable itself is often not sufficient to create a working process
because many executables also load shared libraries. On Fuchsia, there is no
global pool of shared libraries. Instead, every process has an associated
fuchsia.ldsvc.Loader, which provides access to a private pool of shared
libraries appropriate for that process.
This interface provides a protocol for resolving a name into both the
zx.Handle:VMO for the executable and the fuchsia.ldsvc.Loader for its
associated shared libraries.
This interface is rarely used directly. Instead, fdio_spawn and
fdio_spawn_etc use this interface internally when they try to run a file
with a #!resolve directive.
Trait Implementations§
Source§impl ClientCompatFrom<ResolverProxy> for Resolver
Available on Fuchsia only.
impl ClientCompatFrom<ResolverProxy> for Resolver
Source§fn client_compat_from(proxy: ResolverProxy) -> ClientDispatcher<Self, Channel>
fn client_compat_from(proxy: ResolverProxy) -> ClientDispatcher<Self, Channel>
proxy into a Client for this protocol.Source§impl CompatFrom<Resolver> for ResolverMarker
impl CompatFrom<Resolver> for ResolverMarker
Source§fn compat_from(_: Resolver) -> Self
fn compat_from(_: Resolver) -> Self
value into a value of this type.Source§impl CompatFrom<ResolverMarker> for Resolver
impl CompatFrom<ResolverMarker> for Resolver
Source§fn compat_from(_: ResolverMarker) -> Self
fn compat_from(_: ResolverMarker) -> Self
value into a value of this type.Source§impl Discoverable for Resolver
impl Discoverable for Resolver
Source§const PROTOCOL_NAME: &'static str = "fuchsia.process.Resolver"
const PROTOCOL_NAME: &'static str = "fuchsia.process.Resolver"
Source§impl<___H, ___T> DispatchClientMessage<___H, ___T> for Resolverwhere
___H: ResolverClientHandler<___T> + Send,
___T: Transport,
impl<___H, ___T> DispatchClientMessage<___H, ___T> for Resolverwhere
___H: ResolverClientHandler<___T> + Send,
___T: Transport,
Source§impl<___H, ___T> DispatchServerMessage<___H, ___T> for Resolverwhere
___H: ResolverServerHandler<___T> + Send,
___T: Transport,
<Resolve as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
impl<___H, ___T> DispatchServerMessage<___H, ___T> for Resolverwhere
___H: ResolverServerHandler<___T> + Send,
___T: Transport,
<Resolve as Method>::Request: Decode<<___T as Transport>::RecvBuffer>,
impl StructuralPartialEq for Resolver
Auto Trait Implementations§
impl Freeze for Resolver
impl RefUnwindSafe for Resolver
impl Send for Resolver
impl Sync for Resolver
impl Unpin for Resolver
impl UnwindSafe for Resolver
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
Source§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
§impl<T> InstanceFromServiceTransport<T> for T
impl<T> InstanceFromServiceTransport<T> for T
§fn from_service_transport(handle: T) -> T
fn from_service_transport(handle: T) -> T
T to [Self]