pub struct CommandEnvironment { /* private fields */ }Implementations§
Source§impl CommandEnvironment
impl CommandEnvironment
pub fn new() -> Self
pub fn create<F, Fut>(&mut self, name: &str, handler: F) -> Result<(), String>where
F: Fn(CommandContext) -> Fut + Send + Sync + 'static,
Fut: Future<Output = CommandResult> + Send + 'static,
pub fn list(&self) -> Vec<String>
pub fn get(&self, name: &str) -> Option<PackageHandler>
pub async fn run(&self, name: &str, context: CommandContext) -> CommandResult
pub fn extend<F>(&mut self, name: &str, middleware: F) -> Result<(), String>
pub fn inherit( &mut self, name: &str, parent: &str, args: Vec<String>, ) -> Result<(), String>
pub fn compose(&mut self, name: &str, names: &[&str]) -> Result<(), String>
Sourcepub fn install(&mut self, package: CommandPackage) -> Result<(), String>
pub fn install(&mut self, package: CommandPackage) -> Result<(), String>
Validate all commands before replacing a package, including when hot reloading.
pub fn uninstall(&mut self, package: &str)
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for CommandEnvironment
impl !UnwindSafe for CommandEnvironment
impl Freeze for CommandEnvironment
impl Send for CommandEnvironment
impl Sync for CommandEnvironment
impl Unpin for CommandEnvironment
impl UnsafeUnpin for CommandEnvironment
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.