/// Returns `true` if the token can appear at the start of a type.
Returns `true` if the token can appear at the start of a type.
Returns ` true ` if the token can appear at the start of a type .
pub fn can_begin_type(&self) -> bool {
        match self.kind {
            Ident(name, is_raw)        =>
                ident_can_begin_type(name, self.span, is_raw), // type name or keyword
            OpenDelim(Paren)            | // tuple
            OpenDelim(Bracket)          | // array
            Not                         | // never
            BinOp(Star)                 | // raw pointer
            BinOp(And)                  | // reference
            AndAnd                      | // double reference
            Question                    | // maybe bound in trait object
            Lifetime(..)                | // lifetime bound in trait object
            Lt | BinOp(Shl)             | // associated path
            ModSep                      => true, // global path
            Interpolated(ref nt) => match **nt {
                NtIdent(..) | NtTy(..) | NtPath(..) | NtLifetime(..) => true,
                _ => false,
            },
            _ => false,
        }
    }
pub fn can_begin_type ( & self ) -> bool { match self . kind { Ident ( name , is_raw ) => ident_can_begin_type ( name , self . span , is_raw ) , // type name or keyword OpenDelim ( Paren ) | // tuple OpenDelim ( Bracket ) | // array Not | // never BinOp ( Star ) | // raw pointer BinOp ( And ) | // reference AndAnd | // double reference Question | // maybe bound in trait object Lifetime ( .. ) | // lifetime bound in trait object Lt | BinOp ( Shl ) | // associated path ModSep => true , // global path Interpolated ( ref nt ) => match * * nt { NtIdent ( .. ) | NtTy ( .. ) | NtPath ( .. ) | NtLifetime ( .. ) => true , _ => false , } , _ => false , } }
Returns `true` if the token can appear at the start of a type.
Returns ` true ` if the token can appear at the start of a type .
&self