Skip to content

Commit b8328fd

Browse files
d
1 parent 534d905 commit b8328fd

File tree

1 file changed

+20
-21
lines changed

1 file changed

+20
-21
lines changed

src/languages/d.js

Lines changed: 20 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,10 @@
1-
import { insertBefore } from '../util/language-util.js';
21
import clike from './clike.js';
32

43
/** @type {import('../types.d.ts').LanguageProto<'d'>} */
54
export default {
65
id: 'd',
76
base: clike,
8-
grammar ({ base }) {
9-
insertBefore(base, 'string', {
10-
// Characters
11-
// 'a', '\\', '\n', '\xFF', '\377', '\uFFFF', '\U0010FFFF', '\quot'
12-
'char': /'(?:\\(?:\W|\w+)|[^\\])'/,
13-
});
14-
15-
insertBefore(base, 'keyword', {
16-
'property': /\B@\w*/,
17-
});
18-
19-
insertBefore(base, 'function', {
20-
'register': {
21-
// Iasm registers
22-
pattern:
23-
/\b(?:[ABCD][LHX]|E?(?:BP|DI|SI|SP)|[BS]PL|CR[0234]|[ECSDGF]S|[DS]IL|DR[012367]|E[ABCD]X|X?MM[0-7]|R(?:1[0-5]|[89])[BWD]?|R[ABCD]X|R[BS]P|R[DS]I|TR[3-7]|XMM(?:1[0-5]|[89])|YMM(?:1[0-5]|\d))\b|\bST(?:\([0-7]\)|\b)/,
24-
alias: 'variable',
25-
},
26-
});
27-
7+
grammar () {
288
return {
299
'comment': [
3010
{
@@ -101,6 +81,25 @@ export default {
10181

10282
'operator':
10383
/\|[|=]?|&[&=]?|\+[+=]?|-[-=]?|\.?\.\.|=[>=]?|!(?:i[ns]\b|<>?=?|>=?|=)?|\bi[ns]\b|(?:<[<>]?|>>?>?|\^\^|[*\/%^~])=?/,
84+
85+
$insertBefore: {
86+
'string': {
87+
// Characters
88+
// 'a', '\\', '\n', '\xFF', '\377', '\uFFFF', '\U0010FFFF', '\quot'
89+
'char': /'(?:\\(?:\W|\w+)|[^\\])'/,
90+
},
91+
'keyword': {
92+
'property': /\B@\w*/,
93+
},
94+
'function': {
95+
'register': {
96+
// Iasm registers
97+
pattern:
98+
/\b(?:[ABCD][LHX]|E?(?:BP|DI|SI|SP)|[BS]PL|CR[0234]|[ECSDGF]S|[DS]IL|DR[012367]|E[ABCD]X|X?MM[0-7]|R(?:1[0-5]|[89])[BWD]?|R[ABCD]X|R[BS]P|R[DS]I|TR[3-7]|XMM(?:1[0-5]|[89])|YMM(?:1[0-5]|\d))\b|\bST(?:\([0-7]\)|\b)/,
99+
alias: 'variable',
100+
},
101+
},
102+
},
104103
};
105104
},
106105
};

0 commit comments

Comments
 (0)