Struct proc_macro::Literal 1.29.0[−][src]
pub struct Literal(_);
Expand description
字面量字符串 ("hello"
),字节字符串 (b"hello"
),字符 ('a'
),字节字符 (b'a'
),带或不带后缀 (‘1’,1u8
,2.3
,2.3f32
) 的整数或浮点数。
true
和 false
之类的布尔字面量在这里不属于它们,它们是 Ident
。
Implementations
用指定的值创建一个新的后缀整数字面量。
此函数将创建一个类似于 1u32
的整数,其中指定的整数值是 token 的第一部分,并且整数也以结尾加后缀。
由负数创建的字面量可能无法通过 TokenStream
或字符串往返,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的后缀整数字面量。
此函数将创建一个类似于 1u32
的整数,其中指定的整数值是 token 的第一部分,并且整数也以结尾加后缀。
由负数创建的字面量可能无法通过 TokenStream
或字符串往返,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的后缀整数字面量。
此函数将创建一个类似于 1u32
的整数,其中指定的整数值是 token 的第一部分,并且整数也以结尾加后缀。
由负数创建的字面量可能无法通过 TokenStream
或字符串往返,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的后缀整数字面量。
此函数将创建一个类似于 1u32
的整数,其中指定的整数值是 token 的第一部分,并且整数也以结尾加后缀。
由负数创建的字面量可能无法通过 TokenStream
或字符串往返,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的后缀整数字面量。
此函数将创建一个类似于 1u32
的整数,其中指定的整数值是 token 的第一部分,并且整数也以结尾加后缀。
由负数创建的字面量可能无法通过 TokenStream
或字符串往返,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的后缀整数字面量。
此函数将创建一个类似于 1u32
的整数,其中指定的整数值是 token 的第一部分,并且整数也以结尾加后缀。
由负数创建的字面量可能无法通过 TokenStream
或字符串往返,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的后缀整数字面量。
此函数将创建一个类似于 1u32
的整数,其中指定的整数值是 token 的第一部分,并且整数也以结尾加后缀。
由负数创建的字面量可能无法通过 TokenStream
或字符串往返,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的后缀整数字面量。
此函数将创建一个类似于 1u32
的整数,其中指定的整数值是 token 的第一部分,并且整数也以结尾加后缀。
由负数创建的字面量可能无法通过 TokenStream
或字符串往返,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的后缀整数字面量。
此函数将创建一个类似于 1u32
的整数,其中指定的整数值是 token 的第一部分,并且整数也以结尾加后缀。
由负数创建的字面量可能无法通过 TokenStream
或字符串往返,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的后缀整数字面量。
此函数将创建一个类似于 1u32
的整数,其中指定的整数值是 token 的第一部分,并且整数也以结尾加后缀。
由负数创建的字面量可能无法通过 TokenStream
或字符串往返,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的后缀整数字面量。
此函数将创建一个类似于 1u32
的整数,其中指定的整数值是 token 的第一部分,并且整数也以结尾加后缀。
由负数创建的字面量可能无法通过 TokenStream
或字符串往返,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的后缀整数字面量。
此函数将创建一个类似于 1u32
的整数,其中指定的整数值是 token 的第一部分,并且整数也以结尾加后缀。
由负数创建的字面量可能无法通过 TokenStream
或字符串往返,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的无后缀的整数字面量。
此函数将创建一个类似于 1
的整数,其中指定的整数值是 token 的第一部分。
在此 token 上未指定后缀,这意味着像 Literal::i8_unsuffixed(1)
这样的调用等效于 Literal::u32_unsuffixed(1)
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的无后缀的整数字面量。
此函数将创建一个类似于 1
的整数,其中指定的整数值是 token 的第一部分。
在此 token 上未指定后缀,这意味着像 Literal::i8_unsuffixed(1)
这样的调用等效于 Literal::u32_unsuffixed(1)
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的无后缀的整数字面量。
此函数将创建一个类似于 1
的整数,其中指定的整数值是 token 的第一部分。
在此 token 上未指定后缀,这意味着像 Literal::i8_unsuffixed(1)
这样的调用等效于 Literal::u32_unsuffixed(1)
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的无后缀的整数字面量。
此函数将创建一个类似于 1
的整数,其中指定的整数值是 token 的第一部分。
在此 token 上未指定后缀,这意味着像 Literal::i8_unsuffixed(1)
这样的调用等效于 Literal::u32_unsuffixed(1)
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的无后缀的整数字面量。
此函数将创建一个类似于 1
的整数,其中指定的整数值是 token 的第一部分。
在此 token 上未指定后缀,这意味着像 Literal::i8_unsuffixed(1)
这样的调用等效于 Literal::u32_unsuffixed(1)
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的无后缀的整数字面量。
此函数将创建一个类似于 1
的整数,其中指定的整数值是 token 的第一部分。
在此 token 上未指定后缀,这意味着像 Literal::i8_unsuffixed(1)
这样的调用等效于 Literal::u32_unsuffixed(1)
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的无后缀的整数字面量。
此函数将创建一个类似于 1
的整数,其中指定的整数值是 token 的第一部分。
在此 token 上未指定后缀,这意味着像 Literal::i8_unsuffixed(1)
这样的调用等效于 Literal::u32_unsuffixed(1)
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的无后缀的整数字面量。
此函数将创建一个类似于 1
的整数,其中指定的整数值是 token 的第一部分。
在此 token 上未指定后缀,这意味着像 Literal::i8_unsuffixed(1)
这样的调用等效于 Literal::u32_unsuffixed(1)
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的无后缀的整数字面量。
此函数将创建一个类似于 1
的整数,其中指定的整数值是 token 的第一部分。
在此 token 上未指定后缀,这意味着像 Literal::i8_unsuffixed(1)
这样的调用等效于 Literal::u32_unsuffixed(1)
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的无后缀的整数字面量。
此函数将创建一个类似于 1
的整数,其中指定的整数值是 token 的第一部分。
在此 token 上未指定后缀,这意味着像 Literal::i8_unsuffixed(1)
这样的调用等效于 Literal::u32_unsuffixed(1)
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的无后缀的整数字面量。
此函数将创建一个类似于 1
的整数,其中指定的整数值是 token 的第一部分。
在此 token 上未指定后缀,这意味着像 Literal::i8_unsuffixed(1)
这样的调用等效于 Literal::u32_unsuffixed(1)
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
用指定的值创建一个新的无后缀的整数字面量。
此函数将创建一个类似于 1
的整数,其中指定的整数值是 token 的第一部分。
在此 token 上未指定后缀,这意味着像 Literal::i8_unsuffixed(1)
这样的调用等效于 Literal::u32_unsuffixed(1)
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
通过此方法创建的字面量默认情况下具有 Span::call_site()
跨度,可以使用以下 set_span
方法进行配置。
创建一个新的不带后缀的浮点字面量。
此构造函数类似于 Literal::i8_unsuffixed
,后者将 float 的值直接发出到 token 中,但不使用后缀,因此可以在以后的编译器中推断出它是 f64
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
Panics
此函数要求指定的浮点数是有限的,例如,如果它是无穷大或 NaN,则此函数将为 panic。
创建一个新的后缀浮点字面量。
该构造函数将创建一个像 1.0f32
这样的字面量,其中指定的值是 token 的前一部分,而 f32
是 token 的后缀。
token 在编译器中将始终被推断为 f32
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
Panics
此函数要求指定的浮点数是有限的,例如,如果它是无穷大或 NaN,则此函数将为 panic。
创建一个新的不带后缀的浮点字面量。
此构造函数类似于 Literal::i8_unsuffixed
,后者将 float 的值直接发出到 token 中,但不使用后缀,因此可以在以后的编译器中推断出它是 f64
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
Panics
此函数要求指定的浮点数是有限的,例如,如果它是无穷大或 NaN,则此函数将为 panic。
创建一个新的后缀浮点字面量。
该构造函数将创建一个像 1.0f64
这样的字面量,其中指定的值是 token 的前一部分,而 f64
是 token 的后缀。
token 在编译器中将始终被推断为 f64
。
由负数创建的字面量可能无法在 TokenStream
或字符串的往返旅行中幸存下来,并且可能会分成两个 tokens (-
和正字面量)。
Panics
此函数要求指定的浮点数是有限的,例如,如果它是无穷大或 NaN,则此函数将为 panic。
Trait Implementations
将字面量打印为一个字符串,该字符串应可以无损地转换回相同的字面量 (但浮点型字面量的可能取整除外)。
从字符串化表示中解析单个字面量。
为了成功解析,输入字符串不能包含除字面量 token 之外的任何内容。
具体来说,它不能包含除字面量之外的空格或注释。
生成的字面量 token 将具有 Span::call_site()
span。
NOTE: 某些错误可能导致 panics 而不是返回 LexError
。
我们保留稍后将这些错误更改为 LexError 的权利。