[][src]Enum syn::Lit

pub enum Lit {
    Str(LitStr),
    ByteStr(LitByteStr),
    Byte(LitByte),
    Char(LitChar),
    Int(LitInt),
    Float(LitFloat),
    Bool(LitBool),
    Verbatim(LitVerbatim),
}

A Rust literal such as a string or integer or boolean.

This type is available if Syn is built with the "derive" or "full" feature.

Syntax tree enum

This type is a syntax tree enum.

Variants

Str(LitStr)

A UTF-8 string literal: "foo".

This type is available if Syn is built with the "derive" or "full" feature.

ByteStr(LitByteStr)

A byte string literal: b"foo".

This type is available if Syn is built with the "derive" or "full" feature.

Byte(LitByte)

A byte literal: b'f'.

This type is available if Syn is built with the "derive" or "full" feature.

Char(LitChar)

A character literal: 'a'.

This type is available if Syn is built with the "derive" or "full" feature.

Int(LitInt)

An integer literal: 1 or 1u16.

Holds up to 64 bits of data. Use LitVerbatim for any larger integer literal.

This type is available if Syn is built with the "derive" or "full" feature.

Float(LitFloat)

A floating point literal: 1f64 or 1.0e10f64.

Must be finite. May not be infinte or NaN.

This type is available if Syn is built with the "derive" or "full" feature.

Bool(LitBool)

A boolean literal: true or false.

This type is available if Syn is built with the "derive" or "full" feature.

Verbatim(LitVerbatim)

A raw token literal not interpreted by Syn, possibly because it represents an integer larger than 64 bits.

This type is available if Syn is built with the "derive" or "full" feature.

Methods

impl Lit[src]

pub fn new(token: Literal) -> Self[src]

Interpret a Syn literal from a proc-macro2 literal.

Not all proc-macro2 literals are valid Syn literals. In particular, doc comments are considered by proc-macro2 to be literals but in Syn they are Attribute.

Panics

Panics if the input is a doc comment literal.

Trait Implementations

impl Token for Lit[src]

impl Parse for Lit[src]

impl Clone for Lit[src]

impl From<Lit> for NestedMeta[src]

impl From<LitStr> for Lit[src]

impl From<LitByteStr> for Lit[src]

impl From<LitByte> for Lit[src]

impl From<LitChar> for Lit[src]

impl From<LitInt> for Lit[src]

impl From<LitFloat> for Lit[src]

impl From<LitBool> for Lit[src]

impl From<LitVerbatim> for Lit[src]

impl ToTokens for Lit[src]

Auto Trait Implementations

impl !Send for Lit

impl Unpin for Lit

impl !Sync for Lit

impl UnwindSafe for Lit

impl !RefUnwindSafe for Lit

Blanket Implementations

impl<T> Token for T where
    T: CustomToken, 
[src]

impl<T> Spanned for T where
    T: ToTokens
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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

impl<T> From<T> for T[src]

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

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> 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> BorrowMut<T> for T where
    T: ?Sized
[src]

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

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