summaryrefslogtreecommitdiff
path: root/vendor/dialoguer/src/history.rs
diff options
context:
space:
mode:
authorValentin Popov <valentin@popov.link>2024-01-08 00:21:28 +0300
committerValentin Popov <valentin@popov.link>2024-01-08 00:21:28 +0300
commit1b6a04ca5504955c571d1c97504fb45ea0befee4 (patch)
tree7579f518b23313e8a9748a88ab6173d5e030b227 /vendor/dialoguer/src/history.rs
parent5ecd8cf2cba827454317368b68571df0d13d7842 (diff)
downloadfparkan-1b6a04ca5504955c571d1c97504fb45ea0befee4.tar.xz
fparkan-1b6a04ca5504955c571d1c97504fb45ea0befee4.zip
Initial vendor packages
Signed-off-by: Valentin Popov <valentin@popov.link>
Diffstat (limited to 'vendor/dialoguer/src/history.rs')
-rw-r--r--vendor/dialoguer/src/history.rs15
1 files changed, 15 insertions, 0 deletions
diff --git a/vendor/dialoguer/src/history.rs b/vendor/dialoguer/src/history.rs
new file mode 100644
index 0000000..d0818cc
--- /dev/null
+++ b/vendor/dialoguer/src/history.rs
@@ -0,0 +1,15 @@
+/// Trait for history handling.
+pub trait History<T> {
+ /// This is called with the current position that should
+ /// be read from history. The `pos` represents the number
+ /// of times the `Up`/`Down` arrow key has been pressed.
+ /// This would normally be used as an index to some sort
+ /// of vector. If the `pos` does not have an entry, [`None`](Option::None)
+ /// should be returned.
+ fn read(&self, pos: usize) -> Option<String>;
+
+ /// This is called with the next value you should store
+ /// in history at the first location. Normally history
+ /// is implemented as a FIFO queue.
+ fn write(&mut self, val: &T);
+}