pub struct DriverRunner {
pub bind_manager: BindManagerHandle,
pub bootup_tracker: Rc<BootupTracker>,
pub devfs: Arc<Devfs>,
/* private fields */
}Fields§
§bind_manager: BindManagerHandle§bootup_tracker: Rc<BootupTracker>§devfs: Arc<Devfs>Implementations§
Source§impl DriverRunner
impl DriverRunner
pub fn new( realm: RealmProxy, introspector: IntrospectorProxy, dictionary_util: DictionaryUtil, driver_index: DriverIndexProxy, loader_service_factory: UnboundedSender<Sender<Result<ClientEnd<LoaderMarker>, Status>>>, enable_test_shutdown_delays: bool, offer_injector: OfferInjector, devfs: Arc<Devfs>, ) -> Rc<Self>
pub fn register_notifier(self: &Rc<Self>) -> Result<(), Error>
pub fn root_node(&self) -> Rc<Node>
pub fn get_composite_list_info(&self) -> Vec<CompositeNodeInfo>
pub fn driver_hosts(&self) -> Vec<Rc<dyn DriverHost>>
pub fn get_driver_host( &self, driver_host_name_for_colocation: &str, ) -> Option<Rc<dyn DriverHost>>
pub async fn start_root_driver( self: &Rc<Self>, url: String, ) -> Result<(), Status>
pub fn start_devfs_driver(self: &Rc<Self>)
pub async fn start_driver( self: &Rc<Self>, node: &Rc<Node>, url: &str, package_type: DriverPackageType, ) -> Result<(), Status>
pub async fn create_driver_host( &self, use_next_vdso: bool, driver_host_name_for_colocation: String, ) -> Result<Rc<dyn DriverHost>, Status>
pub async fn create_driver_host_dynamic_linker( self: &Rc<Self>, driver_host_name_for_colocation: String, ) -> Result<Rc<dyn DriverHost>, Status>
pub fn publish(self: &Rc<Self>, fs: &mut ServiceFs<ServiceObjLocal<'_, ()>>)
pub fn serve_composite_node_manager( self: &Rc<Self>, stream: CompositeNodeManagerRequestStream, )
pub fn serve_node_bus_topology( self: &Rc<Self>, stream: NodeBusTopologyRequestStream, )
pub fn serve_crash_introspect( self: &Rc<Self>, stream: CrashIntrospectRequestStream, )
pub async fn rebind_composites_with_driver(&self, driver_url: &str) -> u32
pub async fn restart_nodes_colocated_with_driver_url( self: &Rc<Self>, url: &str, rematch_flags: RestartRematchFlags, ) -> Result<u32, Status>
pub async fn restart_with_dictionary( self: &Rc<Self>, moniker: String, dictionary: DictionaryRef, reset_eventpair: EventPair, )
pub fn inspect(&self) -> Inspector
Trait Implementations§
Source§impl NodeRemover for DriverRunner
impl NodeRemover for DriverRunner
fn shutdown_all_drivers<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn shutdown_pkg_drivers<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn set_on_removal_timeout_callback(&self, callback: Box<dyn Fn()>)
Auto Trait Implementations§
impl !Freeze for DriverRunner
impl !RefUnwindSafe for DriverRunner
impl !Send for DriverRunner
impl !Sync for DriverRunner
impl Unpin for DriverRunner
impl UnsafeUnpin for DriverRunner
impl !UnwindSafe for DriverRunner
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
Mutably borrows from an owned value. Read more
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
Converts the given service transport handle of type
T to [Self]Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more