[−][src]Macro synom::option
Turn a failed parse into None
and a successful parse into Some
.
- Syntax:
option!(THING)
- Output:
Option<THING>
extern crate syn; #[macro_use] extern crate synom; named!(maybe_bang -> Option<&str>, option!(punct!("!"))); fn main() { let input = "!"; let parsed = maybe_bang(input).expect("maybe bang"); assert_eq!(parsed, Some("!")); let input = ""; let parsed = maybe_bang(input).expect("maybe bang"); assert_eq!(parsed, None); }