Added octal literal support.

This commit is contained in:
Matt Carberry 2013-11-02 21:26:29 -07:00
parent e0c01ca153
commit 519b86b8a8
11 changed files with 64 additions and 5 deletions

View file

@ -224,6 +224,10 @@
[0-9a-fA-F]
</define-regex>
<define-regex id="oct_digit" extended="true">
[0-7]
</define-regex>
<context id="number" style-ref="number">
<match extended="true">
((?&lt;=\.\.)|(?&lt;![\w\.]))
@ -231,6 +235,7 @@
[1-9][0-9_]*\%{num_suffix}?|
0[0-9_]*\%{num_suffix}?|
0b[01_]+\%{int_suffix}?|
0o(\%{oct_digit}|_)+\%{int_suffix}?|
0x(\%{hex_digit}|_)+\%{int_suffix}?
)
((?![\w\.].)|(?=\.\.))

View file

@ -199,6 +199,7 @@
<Detect2Chars char="/" char1="/" attribute="Comment" context="Commentar 1"/>
<Detect2Chars char="/" char1="*" attribute="Comment" context="Commentar 2" beginRegion="Comment"/>
<RegExpr String="0x[0-9a-fA-F_]+&rustIntSuf;" attribute="Number" context="#stay"/>
<RegExpr String="0o[0-7_]+&rustIntSuf;" attribute="Number" context="#stay"/>
<RegExpr String="0b[0-1_]+&rustIntSuf;" attribute="Number" context="#stay"/>
<RegExpr String="[0-9][0-9_]*\.[0-9_]*([eE][+-]?[0-9_]+)?(f32|f64|f)?" attribute="Number" context="#stay"/>
<RegExpr String="[0-9][0-9_]*&rustIntSuf;" attribute="Number" context="#stay"/>

View file

@ -160,7 +160,10 @@ syn match rustNumber display "\<[0-9][0-9_]*\(i\|i8\|i16\|i32\|i64\)\>"
syn match rustHexNumber display "\<0x[a-fA-F0-9_]\+\>"
syn match rustHexNumber display "\<0x[a-fA-F0-9_]\+\(u\|u8\|u16\|u32\|u64\)\>"
syn match rustHexNumber display "\<0x[a-fA-F0-9_]\+\(i8\|i16\|i32\|i64\)\>"
syn match rustHexNumber display "\<0x[0-9_]\+\(i8\|i16\|i32\|i64\)\>"
syn match rustOctNumber display "\<0o[0-7_]\+\>"
syn match rustOctNumber display "\<0o[0-7_]\+\(u\|u8\|u16\|u32\|u64\)\>"
syn match rustOctNumber display "\<0o[0-7_]\+\(i8\|i16\|i32\|i64\)\>"
syn match rustBinNumber display "\<0b[01_]\+\>"
syn match rustBinNumber display "\<0b[01_]\+\(u\|u8\|u16\|u32\|u64\)\>"
syn match rustBinNumber display "\<0b[01_]\+\(i8\|i16\|i32\|i64\)\>"
@ -198,6 +201,7 @@ syn region rustFoldBraces start="{" end="}" transparent fold
" Default highlighting {{{1
hi def link rustHexNumber rustNumber
hi def link rustOctNumber rustNumber
hi def link rustBinNumber rustNumber
hi def link rustIdentifierPrime rustIdentifier
hi def link rustTrait rustType