aboutsummaryrefslogtreecommitdiff
path: root/examples/example-completion
diff options
context:
space:
mode:
Diffstat (limited to 'examples/example-completion')
-rw-r--r--examples/example-completion/Cargo.lock18
-rw-r--r--examples/example-completion/src/main.rs7
2 files changed, 17 insertions, 8 deletions
diff --git a/examples/example-completion/Cargo.lock b/examples/example-completion/Cargo.lock
index 0da9702..568bec5 100644
--- a/examples/example-completion/Cargo.lock
+++ b/examples/example-completion/Cargo.lock
@@ -16,12 +16,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5454cda0d57db59778608d7a47bff5b16c6705598265869fb052b657f66cf05e"
[[package]]
+name = "just_fmt"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6170dccbc3ea15dfb7f2da964097f814aba1dd8f746d4ffc56f33245c38e6d96"
+
+[[package]]
name = "just_template"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4fb99a3c1dee7299c57b26ef927f15535da0fbc93d6deb1d1114cae1337be4fb"
dependencies = [
- "just_fmt",
+ "just_fmt 0.1.2",
"just_template_macros",
]
@@ -38,7 +44,7 @@ dependencies = [
[[package]]
name = "mingling"
-version = "0.2.0"
+version = "0.3.0"
dependencies = [
"mingling_core",
"mingling_macros",
@@ -47,17 +53,17 @@ dependencies = [
[[package]]
name = "mingling_core"
-version = "0.2.0"
+version = "0.3.0"
dependencies = [
- "just_fmt",
+ "just_fmt 0.2.0",
"just_template",
]
[[package]]
name = "mingling_macros"
-version = "0.2.0"
+version = "0.3.0"
dependencies = [
- "just_fmt",
+ "just_fmt 0.2.0",
"proc-macro2",
"quote",
"syn",
diff --git a/examples/example-completion/src/main.rs b/examples/example-completion/src/main.rs
index 0c64d03..0159807 100644
--- a/examples/example-completion/src/main.rs
+++ b/examples/example-completion/src/main.rs
@@ -45,6 +45,7 @@
//! ```
use mingling::{macros::suggest, prelude::*, ShellContext, Suggest};
+use std::io::Write;
fn main() {
let mut program = ThisProgram::new();
@@ -118,13 +119,15 @@ fn handle_greet(args: EntryGreet) -> Next {
/// Renders the greeting with the result name and repeat count.
#[renderer]
-fn render_name(result: ResultName) {
+fn render_name(result: ResultName) -> RenderResult {
let (repeat, name) = result.inner;
+ let mut render_result = RenderResult::new();
let mut parts = Vec::with_capacity(repeat as usize);
for _ in 0..repeat {
parts.push(name.clone());
}
- r_println!("Hello, {}!", parts.join(", "));
+ writeln!(render_result, "Hello, {}!", parts.join(", ")).ok();
+ render_result
}
gen_program!();