Enum syn::Type [−][src]
pub enum Type {
Show variants
    Array(TypeArray),
    BareFn(TypeBareFn),
    Group(TypeGroup),
    ImplTrait(TypeImplTrait),
    Infer(TypeInfer),
    Macro(TypeMacro),
    Never(TypeNever),
    Paren(TypeParen),
    Path(TypePath),
    Ptr(TypePtr),
    Reference(TypeReference),
    Slice(TypeSlice),
    TraitObject(TypeTraitObject),
    Tuple(TypeTuple),
    Verbatim(TokenStream),
    // some variants omitted
}The possible types that a Rust value could have.
This type is available only if Syn is built with the "derive" or "full"
feature.
Syntax tree enum
This type is a syntax tree enum.
Variants
Array(TypeArray)A fixed size array type: [T; n].
BareFn(TypeBareFn)A bare function type: fn(usize) -> bool.
Group(TypeGroup)A type contained within invisible delimiters.
ImplTrait(TypeImplTrait)An impl Bound1 + Bound2 + Bound3 type where Bound is a trait or
a lifetime.
Infer(TypeInfer)Indication that a type should be inferred by the compiler: _.
Macro(TypeMacro)A macro in the type position.
Never(TypeNever)The never type: !.
Paren(TypeParen)A parenthesized type equivalent to the inner type.
Path(TypePath)A path like std::slice::Iter, optionally qualified with a
self-type as in <Vec<T> as SomeTrait>::Associated.
Ptr(TypePtr)A raw pointer type: *const T or *mut T.
Reference(TypeReference)A reference type: &'a T or &'a mut T.
Slice(TypeSlice)A dynamically sized slice type: [T].
TraitObject(TypeTraitObject)A trait object type Bound1 + Bound2 + Bound3 where Bound is a
trait or a lifetime.
Tuple(TypeTuple)A tuple type: (A, B, C, String).
Verbatim(TokenStream)Tokens in type position not interpreted by Syn.
Implementations
impl Type[src]
impl Type[src]pub fn without_plus(input: ParseStream<'_>) -> Result<Self>[src]
In some positions, types may not contain the + character, to
disambiguate them. For example in the expression 1 as T, T may not
contain a + character.
This parser does not allow a +, while the default parser does.
Trait Implementations
impl Clone for Type[src]
impl Clone for Type[src]fn clone(&self) -> Self[src]
pub fn clone_from(&mut self, source: &Self)1.0.0[src]
impl From<TypeBareFn> for Type[src]
impl From<TypeBareFn> for Type[src]fn from(e: TypeBareFn) -> Type[src]
impl From<TypeImplTrait> for Type[src]
impl From<TypeImplTrait> for Type[src]fn from(e: TypeImplTrait) -> Type[src]
impl From<TypeReference> for Type[src]
impl From<TypeReference> for Type[src]fn from(e: TypeReference) -> Type[src]
impl From<TypeTraitObject> for Type[src]
impl From<TypeTraitObject> for Type[src]fn from(e: TypeTraitObject) -> Type[src]
impl ToTokens for Type[src]
impl ToTokens for Type[src]