diff options
author | Adam Stankiewicz <sheerun@sher.pl> | 2020-06-13 11:36:03 +0200 |
---|---|---|
committer | Adam Stankiewicz <sheerun@sher.pl> | 2020-06-13 11:36:03 +0200 |
commit | a86c0179ebc99b15d403e3f1d4a4cfff83b47de8 (patch) | |
tree | 1041d5047147bf109aa88707afce9f6232c2af4c /syntax/rust.vim | |
parent | 22095febb74f89d9a3dd6a10c9c95fba83675383 (diff) | |
download | vim-polyglot-a86c0179ebc99b15d403e3f1d4a4cfff83b47de8.tar.gz vim-polyglot-a86c0179ebc99b15d403e3f1d4a4cfff83b47de8.zip |
Update
Diffstat (limited to 'syntax/rust.vim')
-rw-r--r-- | syntax/rust.vim | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/syntax/rust.vim b/syntax/rust.vim index 0cf32ed9..d1e9d8d4 100644 --- a/syntax/rust.vim +++ b/syntax/rust.vim @@ -232,6 +232,27 @@ syn region rustCommentBlockDocNestError matchgroup=rustCommentBlockDocError star syn keyword rustTodo contained TODO FIXME XXX NB NOTE +" asm! macro {{{2 +syn region rustAsmMacro matchgroup=rustMacro start="\<asm!\s*(" end=")" contains=rustAsmDirSpec,rustAsmSym,rustAsmConst,rustAsmOptionsGroup,rustComment.*,rustString.* + +" Clobbered registers +syn keyword rustAsmDirSpec in out lateout inout inlateout contained nextgroup=rustAsmReg skipwhite skipempty +syn region rustAsmReg start="(" end=")" contained contains=rustString + +" Symbol operands +syn keyword rustAsmSym sym contained nextgroup=rustAsmSymPath skipwhite skipempty +syn region rustAsmSymPath start="\S" end=",\|)"me=s-1 contained contains=rustComment.*,rustIdentifier + +" Const +syn region rustAsmConstBalancedParens start="("ms=s+1 end=")" contained contains=@rustAsmConstExpr +syn cluster rustAsmConstExpr contains=rustComment.*,rust.*Number,rustString,rustAsmConstBalancedParens +syn region rustAsmConst start="const" end=",\|)"me=s-1 contained contains=rustStorage,@rustAsmConstExpr + +" Options +syn region rustAsmOptionsGroup start="options\s*(" end=")" contained contains=rustAsmOptions,rustAsmOptionsKey +syn keyword rustAsmOptionsKey options contained +syn keyword rustAsmOptions pure nomem readonly preserves_flags noreturn nostack att_syntax contained + " Folding rules {{{2 " Trivial folding rules to begin with. " FIXME: use the AST to make really good folding @@ -347,6 +368,10 @@ hi def link rustObsoleteExternMod Error hi def link rustQuestionMark Special hi def link rustAsync rustKeyword hi def link rustAwait rustKeyword +hi def link rustAsmDirSpec rustKeyword +hi def link rustAsmSym rustKeyword +hi def link rustAsmOptions rustKeyword +hi def link rustAsmOptionsKey rustAttribute " Other Suggestions: " hi rustAttribute ctermfg=cyan |