// This is a TextMate grammar distributed by `starry-night`. // This grammar is developed at // // and licensed `unlicense`. // See for more info. /** * @import {Grammar} from '@wooorm/starry-night' */ /** @type {Grammar} */ const grammar = { extensions: ['.il'], names: ['il-assembly', 'ilasm', 'msil'], patterns: [ {include: '#comment'}, {include: '#string-double'}, {include: '#string-single'}, {include: '#bytearray'}, {include: '#directive'}, {include: '#label'}, {include: '#opcode-prefix'}, {include: '#opcode-control'}, {include: '#opcode'}, {include: '#storage-modifier'}, {include: '#type-builtin'}, {include: '#number-hex'}, {include: '#number-float'}, {include: '#number-integer'}, {include: '#assembly-ref'}, {include: '#punctuation'} ], repository: { 'assembly-ref': { match: '\\[[A-Za-z_][\\w.]*\\]', name: 'entity.name.type.module.il' }, bytearray: { begin: '\\b(bytearray)\\s*(\\()', beginCaptures: { 1: {name: 'keyword.other.bytearray.il'}, 2: {name: 'punctuation.section.parens.begin.il'} }, end: '\\)', endCaptures: {0: {name: 'punctuation.section.parens.end.il'}}, patterns: [ {include: '#comment'}, {match: '[0-9a-fA-F]{2}', name: 'constant.numeric.hex.il'} ] }, comment: {match: '//.*$', name: 'comment.line.double-slash.il'}, directive: { patterns: [ { match: '(?