text/rust
*.rs
//
/*
*/
fn
type
as
box
break
const
continue
crate
default
else
enum
extern
for
if
impl
in
let
loop
match
mod
move
mut
pub
ref
return
static
struct
super
trait
union
unsafe
use
where
while
abstract
alignof
become
do
final
macro
offsetof
override
priv
proc
pure
sizeof
typeof
unsized
virtual
yield
bool
isize
usize
i8
i16
i32
i64
i128
u8
u16
u32
u64
u128
f32
f64
char
str
Self
self
true
false
(i8|i16|i32|i64|i128|isize|u8|u16|u32|u64|u128|usize)
([eE][+-]?[0-9_]+)
(\%{exponent}?(f32|f64)?)|(\.[0-9][0-9_]*\%{exponent}?)?(f32|f64)?|\.
\%{int-suffix}|\%{float-suffix}
[01]
[0-9a-fA-F]
[0-7]
((?<=\.\.)|(?<![\w\.]))
(
[0-9][0-9_]*\%{num-suffix}?|
0b(\%{bin-digit}|_)+\%{int-suffix}?|
0o(\%{oct-digit}|_)+\%{int-suffix}?|
0x(\%{hex-digit}|_)+\%{int-suffix}?
)
((?![\w\.].)|(?=\.\.))
((?<=\.\.)|(?<![\w\.]))
(
0b(\%{bin-digit}|_)*(?!\%{bin-digit}|_).\w*\%{int-suffix}?|
0o(\%{oct-digit}|_)*(?!\%{oct-digit}|_).\w*\%{int-suffix}?|
0x(\%{hex-digit}|_)*(?!\%{hex-digit}|_).\w*\%{int-suffix}?
)
((?![\w\.].)|(?=\.\.))
([^[:cntrl:][:space:][:punct:][:digit:]]|_)([^[:cntrl:][:punct:][:space:]]|_)*
\%{ident}::
\%{ident}!
'\%{ident}
'|"|
\\|n|r|t|0|
x\%{hex-digit}{2}
u{(\%{hex-digit}_*){1,6}}
\\\%{common-escape}|\\\%{unicode-escape}
\\\%{common-escape}
b?r(#*)"
"\%{1@start}
"
"
b"
"
'([^\\']|\\\%{common-escape}|\\\%{unicode-escape})'
'([^\\']|\\\%{common-escape}|\\\%{unicode-escape}){2,}'(?!\%{ident})
b'([^\\']|\\\%{common-escape})'
b'([^\\']|\\\%{common-escape}){2,}'
\#!?\[
\]