pub struct EngineBoot {Show 17 fields
pub runtime: Runtime,
pub config: SynapsConfig,
pub no_extensions: bool,
pub session: Session,
pub api_messages: Vec<Value>,
pub total_input_tokens: u64,
pub total_output_tokens: u64,
pub session_cost: f64,
pub abort_context: Option<String>,
pub continued: bool,
pub continue_info: Option<ContinueInfo>,
pub registry: Arc<CommandRegistry>,
pub keybind_registry: Arc<RwLock<KeybindRegistry>>,
pub mcp_server_count: usize,
pub system_prompt_path: PathBuf,
pub ext_manager: Arc<RwLock<ExtensionManager>>,
pub background: BackgroundTasks,
}Expand description
Result of the boot sequence — everything a renderer needs to start.
Fields§
§runtime: Runtime§config: SynapsConfig§no_extensions: boolEcho of EngineOpts.no_extensions — callers gate extension discovery on this so the flag has one source of truth.
session: Session§api_messages: Vec<Value>§total_input_tokens: u64§total_output_tokens: u64§session_cost: f64§abort_context: Option<String>§continued: bool§continue_info: Option<ContinueInfo>§registry: Arc<CommandRegistry>§keybind_registry: Arc<RwLock<KeybindRegistry>>Keybind registry. Uses std::sync::RwLock (not tokio) because keybind lookups are synchronous, fast, and called from input handling code that cannot await. This is safe as long as the lock is never held across an await point.
mcp_server_count: usize§system_prompt_path: PathBuf§ext_manager: Arc<RwLock<ExtensionManager>>§background: BackgroundTasksBackground tasks — inbox watcher, socket listener. Aborts on drop.
Auto Trait Implementations§
impl !RefUnwindSafe for EngineBoot
impl !UnwindSafe for EngineBoot
impl Freeze for EngineBoot
impl Send for EngineBoot
impl Sync for EngineBoot
impl Unpin for EngineBoot
impl UnsafeUnpin for EngineBoot
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> 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
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> 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