aboutsummaryrefslogtreecommitdiff
path: root/mingling_core/src/asset/comp.rs
diff options
context:
space:
mode:
Diffstat (limited to 'mingling_core/src/asset/comp.rs')
-rw-r--r--mingling_core/src/asset/comp.rs20
1 files changed, 20 insertions, 0 deletions
diff --git a/mingling_core/src/asset/comp.rs b/mingling_core/src/asset/comp.rs
new file mode 100644
index 0000000..4815b5a
--- /dev/null
+++ b/mingling_core/src/asset/comp.rs
@@ -0,0 +1,20 @@
+mod flags;
+mod shell_ctx;
+mod suggest;
+
+#[doc(hidden)]
+pub use flags::*;
+#[doc(hidden)]
+pub use shell_ctx::*;
+#[doc(hidden)]
+pub use suggest::*;
+
+/// Trait for implementing completion logic.
+///
+/// This trait defines the interface for generating command-line completions.
+/// Types implementing this trait can provide custom completion suggestions
+/// based on the current shell context.
+pub trait Completion {
+ type Previous;
+ fn comp(ctx: ShellContext) -> Suggest;
+}