pub struct MultibufferViewClient { /* private fields */ }Expand description
The Send + Sync handle the provider holds. Cloning is cheap (an mpsc
Sender clone); every clone talks to the same actor / Store, so calls
serialize on the single-consumer loop — the guarantee the !Sync Store
needs. Dropping the last clone ends the actor loop (teardown).
Implementations§
Source§impl MultibufferViewClient
impl MultibufferViewClient
Sourcepub async fn register_views(
&self,
) -> Result<Vec<MultibufferViewSpec>, PluginHostError>
pub async fn register_views( &self, ) -> Result<Vec<MultibufferViewSpec>, PluginHostError>
Drive the guest’s register-multibuffer-views() and collect every view
it declared.
An empty list is not an error: a plugin that provides the seam and declares nothing registers nothing, which is what it asked for.
Sourcepub async fn build(
&self,
view: String,
args: Vec<String>,
) -> Result<Result<MultibufferViewResult, String>, PluginHostError>
pub async fn build( &self, view: String, args: Vec<String>, ) -> Result<Result<MultibufferViewResult, String>, PluginHostError>
Call the guest’s build(view, args). The outer result is the host
surface; the inner Result<_, String> is the guest’s own WIT result,
whose Err declines the view with the guest’s message rather than
opening an empty one.
Trait Implementations§
Source§impl Clone for MultibufferViewClient
impl Clone for MultibufferViewClient
Source§fn clone(&self) -> MultibufferViewClient
fn clone(&self) -> MultibufferViewClient
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for MultibufferViewClient
impl !UnwindSafe for MultibufferViewClient
impl Freeze for MultibufferViewClient
impl Send for MultibufferViewClient
impl Sync for MultibufferViewClient
impl Unpin for MultibufferViewClient
impl UnsafeUnpin for MultibufferViewClient
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<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