Skip to content
This repository was archived by the owner on Jan 25, 2022. It is now read-only.

Commit c355d1d

Browse files
committed
Recognize as as an operator (fixes #107)
1 parent ff646d3 commit c355d1d

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

grammars/rust.cson

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -280,7 +280,7 @@
280280
{
281281
'comment': 'Keyword'
282282
'name': 'keyword.other.rust'
283-
'match': '\\b(crate|extern|mod|let|proc|ref|use|super|as|move)\\b'
283+
'match': '\\b(crate|extern|mod|let|proc|ref|use|super|move)\\b'
284284
}
285285
{ 'include': '#unsafe' }
286286
{ 'include': '#sigils' }

spec/rust-spec.coffee

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -301,7 +301,7 @@ describe 'Rust grammar', ->
301301
expect(tokens[2]).toEqual value: ' text', scopes: ['source.rust']
302302

303303
it 'tokenizes keywords', ->
304-
for t in ['crate', 'extern', 'mod', 'let', 'proc', 'ref', 'use', 'super', 'as', 'move']
304+
for t in ['crate', 'extern', 'mod', 'let', 'proc', 'ref', 'use', 'super', 'move']
305305
{tokens} = grammar.tokenizeLine("text #{t} text")
306306
expect(tokens[0]).toEqual value: 'text ', scopes: ['source.rust']
307307
expect(tokens[1]).toEqual value: t, scopes: ['source.rust', 'keyword.other.rust']
@@ -630,3 +630,11 @@ describe 'Rust grammar', ->
630630
expect(tokens[8][0]).toEqual value: '_a0', scopes: ['source.rust', 'entity.name.function.rust']
631631
expect(tokens[9][0]).toEqual value: '_0a', scopes: ['source.rust', 'entity.name.function.rust']
632632
expect(tokens[10][0]).toEqual value: '__', scopes: ['source.rust', 'entity.name.function.rust']
633+
634+
it 'tokenizes `as` as an operator (issue \\#110)', ->
635+
{tokens} = grammar.tokenizeLine('let i = 10 as f32;')
636+
expect(tokens[0]).toEqual value: 'let', scopes: ['source.rust', 'keyword.other.rust']
637+
expect(tokens[2]).toEqual value: '=', scopes: ['source.rust', 'keyword.operator.assignment.rust']
638+
expect(tokens[4]).toEqual value: '10', scopes: ['source.rust', 'constant.numeric.integer.decimal.rust']
639+
expect(tokens[6]).toEqual value: 'as', scopes: ['source.rust', 'keyword.operator.misc.rust']
640+
expect(tokens[8]).toEqual value: 'f32', scopes: ['source.rust', 'storage.type.core.rust']

0 commit comments

Comments
 (0)