[][src]Enum syntax::ast::LitKind

pub enum LitKind {
    Str(SymbolStrStyle),
    ByteStr(Lrc<Vec<u8>>),
    Byte(u8),
    Char(char),
    Int(u128LitIntType),
    Float(SymbolFloatTy),
    FloatUnsuffixed(Symbol),
    Bool(bool),
    Err(Symbol),
}

Literal kind.

E.g., "foo", 42, 12.34, or bool.

Variants

Str(SymbolStrStyle)

A string literal ("foo").

ByteStr(Lrc<Vec<u8>>)

A byte string (b"foo").

Byte(u8)

A byte char (b'f').

Char(char)

A character literal ('a').

Int(u128LitIntType)

An integer literal (1).

Float(SymbolFloatTy)

A float literal (1f64 or 1E10f64).

FloatUnsuffixed(Symbol)

A float literal without a suffix (1.0 or 1.0E10).

Bool(bool)

A boolean literal.

Err(Symbol)

A recovered character literal that contains mutliple chars, most likely a typo.

Methods

impl LitKind[src]

pub fn is_str(&self) -> bool[src]

Returns true if this literal is a string.

pub fn is_bytestr(&self) -> bool[src]

Returns true if this literal is byte literal string.

pub fn is_numeric(&self) -> bool[src]

Returns true if this is a numeric literal.

pub fn is_unsuffixed(&self) -> bool[src]

Returns true if this literal has no suffix. Note: this will return true for literals with prefixes such as raw strings and byte strings.

pub fn is_suffixed(&self) -> bool[src]

Returns true if this literal has a suffix.

impl LitKind[src]

pub fn to_lit_token(&self) -> Lit[src]

Attempts to recover a token from semantic literal. This function is used when the original token doesn't exist (e.g. the literal is created by an AST-based macro) or unavailable (e.g. from HIR pretty-printing).

Trait Implementations

impl PartialEq<LitKind> for LitKind[src]

impl Clone for LitKind[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for LitKind[src]

impl Hash for LitKind[src]

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0[src]

Feeds a slice of this type into the given [Hasher]. Read more

impl Encodable for LitKind[src]

impl Decodable for LitKind[src]

Auto Trait Implementations

impl !Send for LitKind

impl !Sync for LitKind

Blanket Implementations

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]

impl<T> Encodable for T where
    T: UseSpecializedEncodable + ?Sized
[src]

impl<T> Decodable for T where
    T: UseSpecializedDecodable
[src]

impl<E> SpecializationError for E[src]

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

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

impl<T> Erased for T[src]