Enum syn::parse::IResult
[−]
[src]
pub enum IResult<I, O> {
Done(I, O),
Error,
}The result of a parser.
Variants
Done(I, O)Parsing succeeded. The first field contains the rest of the unparsed data and the second field contains the parse result.
ErrorParsing failed.
Methods
impl<'a, O> IResult<&'a str, O>[src]
fn expect(self, name: &str) -> O
Unwraps the result, asserting the the parse is complete. Panics with a message based on the given string if the parse failed or is incomplete.
extern crate syn; #[macro_use] extern crate synom; use syn::Ty; use syn::parse::ty; // One or more Rust types separated by commas. named!(comma_separated_types -> Vec<Ty>, separated_nonempty_list!(punct!(","), ty) ); fn main() { let input = "&str, Map<K, V>, String"; let parsed = comma_separated_types(input).expect("comma-separated types"); assert_eq!(parsed.len(), 3); println!("{:?}", parsed); }
Trait Implementations
impl<I, O> PartialEq<IResult<I, O>> for IResult<I, O> where I: PartialEq<I>,
O: PartialEq<O>[src]
O: PartialEq<O>
fn eq(&self, __arg_0: &IResult<I, O>) -> bool
This method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, __arg_0: &IResult<I, O>) -> bool
This method tests for !=.
impl<I, O> Debug for IResult<I, O> where I: Debug, O: Debug[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result<(), Error>
Formats the value using the given formatter.
impl<I, O> Eq for IResult<I, O> where I: Eq, O: Eq[src]
impl<I, O> Clone for IResult<I, O> where I: Clone, O: Clone[src]
fn clone(&self) -> IResult<I, O>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0
Performs copy-assignment from source. Read more