pub struct DiscoveredSidecar {
pub plugin_name: String,
pub plugin_root: PathBuf,
pub binary: PathBuf,
pub protocol_version: u16,
pub setup_script: Option<PathBuf>,
pub model: Option<SidecarModel>,
pub lifecycle: Option<SidecarLifecycle>,
}Expand description
A discovered sidecar, resolved against its plugin root and ready to
be spawned by crate::sidecar::manager::SidecarManager.
Fields§
§plugin_name: StringPlugin name from the manifest.
plugin_root: PathBufAbsolute path to the plugin’s root directory.
binary: PathBufAbsolute path to the sidecar binary.
protocol_version: u16Sidecar wire-protocol version declared by the plugin.
setup_script: Option<PathBuf>Optional setup script path (resolved against plugin root).
model: Option<SidecarModel>Optional model metadata (modality-specific; opaque to core).
lifecycle: Option<SidecarLifecycle>Optional plugin-claimed lifecycle UX (Phase 8). When Some,
core auto-registers <lifecycle.command> toggle/status and
uses display_name for the pill / status / errors. When
None, the plugin is reachable via the generic /sidecar
fallback only.
Trait Implementations§
Source§impl Clone for DiscoveredSidecar
impl Clone for DiscoveredSidecar
Source§fn clone(&self) -> DiscoveredSidecar
fn clone(&self) -> DiscoveredSidecar
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DiscoveredSidecar
impl Debug for DiscoveredSidecar
Source§impl PartialEq for DiscoveredSidecar
impl PartialEq for DiscoveredSidecar
impl Eq for DiscoveredSidecar
impl StructuralPartialEq for DiscoveredSidecar
Auto Trait Implementations§
impl Freeze for DiscoveredSidecar
impl RefUnwindSafe for DiscoveredSidecar
impl Send for DiscoveredSidecar
impl Sync for DiscoveredSidecar
impl Unpin for DiscoveredSidecar
impl UnsafeUnpin for DiscoveredSidecar
impl UnwindSafe for DiscoveredSidecar
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,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.