Struct proc_macro2::Literal
[−]
[src]
pub struct Literal { /* fields omitted */ }
A literal string ("hello"
), byte string (b"hello"
), character ('a'
),
byte character (b'a'
), an integer or floating point number with or without
a suffix (1
, 1u8
, 2.3
, 2.3f32
).
Boolean literals like true
and false
do not belong here, they are
Ident
s.
Methods
impl Literal
[src]
pub fn u8_suffixed(n: u8) -> Literal
[src]
Creates a new suffixed integer literal with the specified value.
This function will create an integer like 1u32
where the integer
value specified is the first part of the token and the integral is
also suffixed at the end. Literals created from negative numbers may
not survive rountrips through TokenStream
or strings and may be
broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn u16_suffixed(n: u16) -> Literal
[src]
Creates a new suffixed integer literal with the specified value.
This function will create an integer like 1u32
where the integer
value specified is the first part of the token and the integral is
also suffixed at the end. Literals created from negative numbers may
not survive rountrips through TokenStream
or strings and may be
broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn u32_suffixed(n: u32) -> Literal
[src]
Creates a new suffixed integer literal with the specified value.
This function will create an integer like 1u32
where the integer
value specified is the first part of the token and the integral is
also suffixed at the end. Literals created from negative numbers may
not survive rountrips through TokenStream
or strings and may be
broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn u64_suffixed(n: u64) -> Literal
[src]
Creates a new suffixed integer literal with the specified value.
This function will create an integer like 1u32
where the integer
value specified is the first part of the token and the integral is
also suffixed at the end. Literals created from negative numbers may
not survive rountrips through TokenStream
or strings and may be
broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn usize_suffixed(n: usize) -> Literal
[src]
Creates a new suffixed integer literal with the specified value.
This function will create an integer like 1u32
where the integer
value specified is the first part of the token and the integral is
also suffixed at the end. Literals created from negative numbers may
not survive rountrips through TokenStream
or strings and may be
broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn i8_suffixed(n: i8) -> Literal
[src]
Creates a new suffixed integer literal with the specified value.
This function will create an integer like 1u32
where the integer
value specified is the first part of the token and the integral is
also suffixed at the end. Literals created from negative numbers may
not survive rountrips through TokenStream
or strings and may be
broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn i16_suffixed(n: i16) -> Literal
[src]
Creates a new suffixed integer literal with the specified value.
This function will create an integer like 1u32
where the integer
value specified is the first part of the token and the integral is
also suffixed at the end. Literals created from negative numbers may
not survive rountrips through TokenStream
or strings and may be
broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn i32_suffixed(n: i32) -> Literal
[src]
Creates a new suffixed integer literal with the specified value.
This function will create an integer like 1u32
where the integer
value specified is the first part of the token and the integral is
also suffixed at the end. Literals created from negative numbers may
not survive rountrips through TokenStream
or strings and may be
broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn i64_suffixed(n: i64) -> Literal
[src]
Creates a new suffixed integer literal with the specified value.
This function will create an integer like 1u32
where the integer
value specified is the first part of the token and the integral is
also suffixed at the end. Literals created from negative numbers may
not survive rountrips through TokenStream
or strings and may be
broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn isize_suffixed(n: isize) -> Literal
[src]
Creates a new suffixed integer literal with the specified value.
This function will create an integer like 1u32
where the integer
value specified is the first part of the token and the integral is
also suffixed at the end. Literals created from negative numbers may
not survive rountrips through TokenStream
or strings and may be
broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn u8_unsuffixed(n: u8) -> Literal
[src]
Creates a new unsuffixed integer literal with the specified value.
This function will create an integer like 1
where the integer
value specified is the first part of the token. No suffix is
specified on this token, meaning that invocations like
Literal::i8_unsuffixed(1)
are equivalent to
Literal::u32_unsuffixed(1)
. Literals created from negative numbers
may not survive rountrips through TokenStream
or strings and may
be broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn u16_unsuffixed(n: u16) -> Literal
[src]
Creates a new unsuffixed integer literal with the specified value.
This function will create an integer like 1
where the integer
value specified is the first part of the token. No suffix is
specified on this token, meaning that invocations like
Literal::i8_unsuffixed(1)
are equivalent to
Literal::u32_unsuffixed(1)
. Literals created from negative numbers
may not survive rountrips through TokenStream
or strings and may
be broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn u32_unsuffixed(n: u32) -> Literal
[src]
Creates a new unsuffixed integer literal with the specified value.
This function will create an integer like 1
where the integer
value specified is the first part of the token. No suffix is
specified on this token, meaning that invocations like
Literal::i8_unsuffixed(1)
are equivalent to
Literal::u32_unsuffixed(1)
. Literals created from negative numbers
may not survive rountrips through TokenStream
or strings and may
be broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn u64_unsuffixed(n: u64) -> Literal
[src]
Creates a new unsuffixed integer literal with the specified value.
This function will create an integer like 1
where the integer
value specified is the first part of the token. No suffix is
specified on this token, meaning that invocations like
Literal::i8_unsuffixed(1)
are equivalent to
Literal::u32_unsuffixed(1)
. Literals created from negative numbers
may not survive rountrips through TokenStream
or strings and may
be broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn usize_unsuffixed(n: usize) -> Literal
[src]
Creates a new unsuffixed integer literal with the specified value.
This function will create an integer like 1
where the integer
value specified is the first part of the token. No suffix is
specified on this token, meaning that invocations like
Literal::i8_unsuffixed(1)
are equivalent to
Literal::u32_unsuffixed(1)
. Literals created from negative numbers
may not survive rountrips through TokenStream
or strings and may
be broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn i8_unsuffixed(n: i8) -> Literal
[src]
Creates a new unsuffixed integer literal with the specified value.
This function will create an integer like 1
where the integer
value specified is the first part of the token. No suffix is
specified on this token, meaning that invocations like
Literal::i8_unsuffixed(1)
are equivalent to
Literal::u32_unsuffixed(1)
. Literals created from negative numbers
may not survive rountrips through TokenStream
or strings and may
be broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn i16_unsuffixed(n: i16) -> Literal
[src]
Creates a new unsuffixed integer literal with the specified value.
This function will create an integer like 1
where the integer
value specified is the first part of the token. No suffix is
specified on this token, meaning that invocations like
Literal::i8_unsuffixed(1)
are equivalent to
Literal::u32_unsuffixed(1)
. Literals created from negative numbers
may not survive rountrips through TokenStream
or strings and may
be broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn i32_unsuffixed(n: i32) -> Literal
[src]
Creates a new unsuffixed integer literal with the specified value.
This function will create an integer like 1
where the integer
value specified is the first part of the token. No suffix is
specified on this token, meaning that invocations like
Literal::i8_unsuffixed(1)
are equivalent to
Literal::u32_unsuffixed(1)
. Literals created from negative numbers
may not survive rountrips through TokenStream
or strings and may
be broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn i64_unsuffixed(n: i64) -> Literal
[src]
Creates a new unsuffixed integer literal with the specified value.
This function will create an integer like 1
where the integer
value specified is the first part of the token. No suffix is
specified on this token, meaning that invocations like
Literal::i8_unsuffixed(1)
are equivalent to
Literal::u32_unsuffixed(1)
. Literals created from negative numbers
may not survive rountrips through TokenStream
or strings and may
be broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn isize_unsuffixed(n: isize) -> Literal
[src]
Creates a new unsuffixed integer literal with the specified value.
This function will create an integer like 1
where the integer
value specified is the first part of the token. No suffix is
specified on this token, meaning that invocations like
Literal::i8_unsuffixed(1)
are equivalent to
Literal::u32_unsuffixed(1)
. Literals created from negative numbers
may not survive rountrips through TokenStream
or strings and may
be broken into two tokens (-
and positive literal).
Literals created through this method have the Span::call_site()
span by default, which can be configured with the set_span
method
below.
pub fn f64_unsuffixed(f: f64) -> Literal
[src]
pub fn f64_suffixed(f: f64) -> Literal
[src]
pub fn f32_unsuffixed(f: f32) -> Literal
[src]
Creates a new unsuffixed floating-point literal.
This constructor is similar to those like Literal::i8_unsuffixed
where
the float's value is emitted directly into the token but no suffix is
used, so it may be inferred to be a f64
later in the compiler.
Literals created from negative numbers may not survive rountrips through
TokenStream
or strings and may be broken into two tokens (-
and
positive literal).
Panics
This function requires that the specified float is finite, for example if it is infinity or NaN this function will panic.
pub fn f32_suffixed(f: f32) -> Literal
[src]
pub fn string(string: &str) -> Literal
[src]
pub fn character(ch: char) -> Literal
[src]
pub fn byte_string(s: &[u8]) -> Literal
[src]
pub fn span(&self) -> Span
[src]
pub fn set_span(&mut self, span: Span)
[src]
Trait Implementations
impl From<Literal> for TokenTree
[src]
impl Clone for Literal
[src]
fn clone(&self) -> Literal
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Debug for Literal
[src]
fn fmt(&self, f: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more