/// Create a new categorizing lexer from an `CharIter` iterator.
Create a new categorizing lexer from an `CharIter` iterator.
Create a new categorizing lexer from an ` CharIter ` iterator .
pub fn new(mut iter: Box<CharIter<'a>>) -> Cat<'a> {
        let last = iter
            .size_hint()
            .1
            .expect("Iterator must provide upper bounds");
        let c0 = iter.next();
        let c1 = iter.next();
        Cat {
            iter: iter,
            last: last,
            chars: (c0.map(|x| x.1), c1.map(|x| x.1)),
            indices: (
                c0.map(|x| x.0).unwrap_or(last),
                c1.map(|x| x.0).unwrap_or(last),
            ),
        }
    }
pub fn new ( mut iter : Box < CharIter < ' a > > ) -> Cat < ' a > { let last = iter . size_hint ( ) . 1 . expect ( " " ) ; let c0 = iter . next ( ) ; let c1 = iter . next ( ) ; Cat { iter : iter , last : last , chars : ( c0 . map ( | x | x . 1 ) , c1 . map ( | x | x . 1 ) ) , indices : ( c0 . map ( | x | x . 0 ) . unwrap_or ( last ) , c1 . map ( | x | x . 0 ) . unwrap_or ( last ) , ) , } }
Create a new categorizing lexer from an `CharIter` iterator.
Create a new categorizing lexer from an ` CharIter ` iterator .
iter
Box<CharIter<'a>>