serde_spaniel

Crates.ioserde_spaniel
lib.rsserde_spaniel
version0.4.0
sourcesrc
created_at2020-10-15 01:45:34.28593
updated_at2022-08-02 00:41:54.325767
descriptionSpaniel Interactive Deserialiser for Serde
homepagehttps://github.com/komadori/serde_spaniel
repositoryhttps://github.com/komadori/serde_spaniel
max_upload_size
id299841
size99,089
Robin KAY (komadori)

documentation

README

Spaniel Interactive Deserialiser for Serde

crates.io docs

This crate is a Rust library which uses the Serde serialisation framework to capture data interactively from users.

Dependency

[dependencies]
serde_spaniel = "0.4"

Using Spaniel

Spaniel can produce a value of any type which implements Serde's Deserialize trait by interactively querying the user for information. For example, to interactively obtain a vector of strings:

let strs: Vec<String> = serde_spaniel::from_console()?;

Hence, a user could input the value vec!["Hello", "World"] using a dialogue such as below:

seq {
  [0] {
    Add element?: y
    string: Hello
  }
  [1] {
    Add element?: y
    string: World
  }
  [2] {
    Add element?: n
  }
}
Accept value?: y

Licence

Dual-licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 licence, shall be dual-licensed as above, without any additional terms or conditions.

Commit count: 35

cargo fmt