Derive for Unscribe
This commit is contained in:
1 parent
1fab354030
commit
8f7f76d8ba
3 files changed
+160
-68
No files matched your search
@@ -1,13 +1,13 @@
|
||||
use enumscribe::*;
|
||||
|
||||
#[derive(TryScribeCowStr)]
|
||||
#[derive(TryScribeCowStr, Unscribe, Eq, PartialEq, Debug)]
|
||||
enum Airport {
|
||||
#[enumscribe(str = "LHR", case_insensitive)]
|
||||
#[enumscribe(str = "LHR")]
|
||||
Heathrow,
|
||||
#[enumscribe(str = "LGW", case_insensitive)]
|
||||
Gatwick,
|
||||
Gatwick(),
|
||||
#[enumscribe(str = "LTN", case_insensitive)]
|
||||
Luton,
|
||||
Luton {},
|
||||
#[enumscribe(str = "BHX", case_insensitive, ignore)]
|
||||
BirminghamInternational,
|
||||
#[enumscribe(other)]
|
||||
@@ -15,9 +15,13 @@ enum Airport {
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let luton = Airport::Luton;
|
||||
let luton = Airport::Luton {};
|
||||
println!("Hello, {:?}!", luton.try_scribe());
|
||||
|
||||
let other = Airport::Other("Dedicated EasyJet-only airport".to_owned());
|
||||
println!("Hello, {:?}!", other.try_scribe());
|
||||
|
||||
println!("{:?}", Airport::unscribe("LHR"));
|
||||
println!("{:?}", Airport::unscribe("lhr"));
|
||||
println!("{:?}", Airport::unscribe("lgw"));
|
||||
}
|
||||
Reference in new issue
Block a user