[][src]Struct combine_proc_macro::diagnostic::Incomplete

pub struct Incomplete { /* fields omitted */ }

Incomplete is used in a #[proc_macro] to check that all tokens in the Input have been parsed completely or otherwise provide a printable diagnostic-friendly representation of remaining tokens.

This example is not tested
let (ast, trailing) = match parse() {
    Ok(ok) => ok,
    Err(err) => panic!("error parsing in `my_example` macro: {:#?}", err),
};
if let Ok(diagnostic) = Incomplete::from_stream(trailing) {
    panic!("unexpected tokens at end of input:\n\n{}", diagnostic);
}

Methods

impl Incomplete[src]

pub fn from_stream<I>(input: I) -> Option<Incomplete> where
    I: StreamOnce<Item = Token>,
    I::Error: ParseError<I::Item, I::Range, I::Position>, 
[src]

Trait Implementations

impl Display for Incomplete[src]

impl Debug for Incomplete[src]

Auto Trait Implementations

impl !Send for Incomplete

impl !Sync for Incomplete

Blanket Implementations

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T> From for T[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]