aboutsummaryrefslogtreecommitdiff
path: root/mingling_core/src/program/collection.rs
diff options
context:
space:
mode:
Diffstat (limited to 'mingling_core/src/program/collection.rs')
-rw-r--r--mingling_core/src/program/collection.rs21
1 files changed, 13 insertions, 8 deletions
diff --git a/mingling_core/src/program/collection.rs b/mingling_core/src/program/collection.rs
index ff26411..d3d18d6 100644
--- a/mingling_core/src/program/collection.rs
+++ b/mingling_core/src/program/collection.rs
@@ -25,23 +25,23 @@ pub trait ProgramCollect {
/// Use a prefix tree to quickly match arguments and dispatch to an Entry
#[cfg(feature = "dispatch_tree")]
fn dispatch_args_trie(
- raw: &Vec<String>,
+ raw: &[String],
) -> Result<AnyOutput<Self::Enum>, crate::error::ProgramInternalExecuteError>;
/// Get all registered dispatcher names from the program
#[cfg(feature = "dispatch_tree")]
fn get_nodes() -> Vec<(String, &'static (dyn Dispatcher<Self::Enum> + Send + Sync))>;
- /// Build an [AnyOutput](./struct.AnyOutput.html) to indicate that a renderer was not found
+ /// Build an [`AnyOutput`](./struct.AnyOutput.html) to indicate that a renderer was not found
fn build_renderer_not_found(member_id: Self::Enum) -> AnyOutput<Self::Enum>;
- /// Build an [AnyOutput](./struct.AnyOutput.html) to indicate that a dispatcher was not found
+ /// Build an [`AnyOutput`](./struct.AnyOutput.html) to indicate that a dispatcher was not found
fn build_dispatcher_not_found(args: Vec<String>) -> AnyOutput<Self::Enum>;
- /// Build an [AnyOutput](./struct.AnyOutput.html) to indicate that the chain returned an empty result
+ /// Build an [`AnyOutput`](./struct.AnyOutput.html) to indicate that the chain returned an empty result
fn build_empty_result() -> AnyOutput<Self::Enum>;
- /// Render the input [AnyOutput](./struct.AnyOutput.html)
+ /// Render the input [`AnyOutput`](./struct.AnyOutput.html)
fn render(any: AnyOutput<Self::Enum>, r: &mut RenderResult);
/// Render help for Entry
@@ -53,7 +53,7 @@ pub trait ProgramCollect {
any: AnyOutput<Self::Enum>,
) -> Pin<Box<dyn Future<Output = ChainProcess<Self::Enum>> + Send>>;
- /// Find a matching chain to continue execution based on the input [AnyOutput](./struct.AnyOutput.html), returning a new [AnyOutput](./struct.AnyOutput.html)
+ /// Find a matching chain to continue execution based on the input [`AnyOutput`](./struct.AnyOutput.html), returning a new [`AnyOutput`](./struct.AnyOutput.html)
#[cfg(not(feature = "async"))]
fn do_chain(any: AnyOutput<Self::Enum>) -> ChainProcess<Self::Enum>;
@@ -61,13 +61,18 @@ pub trait ProgramCollect {
#[cfg(feature = "comp")]
fn do_comp(any: &AnyOutput<Self::Enum>, ctx: &ShellContext) -> Suggest;
- /// Whether the program has a renderer that can handle the current [AnyOutput](./struct.AnyOutput.html)
+ /// Whether the program has a renderer that can handle the current [`AnyOutput`](./struct.AnyOutput.html)
fn has_renderer(any: &AnyOutput<Self::Enum>) -> bool;
- /// Whether the program has a chain that can handle the current [AnyOutput](./struct.AnyOutput.html)
+ /// Whether the program has a chain that can handle the current [`AnyOutput`](./struct.AnyOutput.html)
fn has_chain(any: &AnyOutput<Self::Enum>) -> bool;
/// Perform general rendering and presentation of any type
+ ///
+ /// # Errors
+ ///
+ /// Returns `Err(GeneralRendererSerializeError)` if serialization of the
+ /// output value fails.
#[cfg(feature = "general_renderer")]
fn general_render(
any: AnyOutput<Self::Enum>,