diff --git a/quick_error/Cargo.lock b/quick_error/Cargo.lock new file mode 100644 index 0000000..d0d4598 --- /dev/null +++ b/quick_error/Cargo.lock @@ -0,0 +1,14 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +[[package]] +name = "quick-error" +version = "1.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" + +[[package]] +name = "quick_error" +version = "0.1.0" +dependencies = [ + "quick-error", +] diff --git a/quick_error/Cargo.toml b/quick_error/Cargo.toml new file mode 100644 index 0000000..c9b0d8e --- /dev/null +++ b/quick_error/Cargo.toml @@ -0,0 +1,11 @@ +[package] +name = "quick_error" +version = "0.1.0" +authors = ["Hatter Jiang@Pixelbook "] +edition = "2018" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +quick-error = "1.2.3" + diff --git a/quick_error/src/main.rs b/quick_error/src/main.rs new file mode 100644 index 0000000..5029d95 --- /dev/null +++ b/quick_error/src/main.rs @@ -0,0 +1,22 @@ +#[macro_use] extern crate quick_error; + +quick_error! { + #[derive(Debug)] + pub enum SomeError { + Io(m: String) { + display("{}", m) + } + Utf8(err: std::str::Utf8Error) { + display("utf8 error") + } + } +} + +// https://docs.rs/quick-error/1.2.3/quick_error/ +fn main() -> Result<(), SomeError> { + println!("Hello, world!"); + + Err(SomeError::Io("m".to_owned())) +} + +