Skip to content

Commit 75dea07

Browse files
Transform squirrel
1 parent 59b18c2 commit 75dea07

File tree

1 file changed

+20
-21
lines changed

1 file changed

+20
-21
lines changed

src/languages/squirrel.js

Lines changed: 20 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,14 @@
11
import { toArray } from '../util/iterables.js';
2-
import { insertBefore } from '../util/language-util.js';
32
import clike from './clike.js';
43

54
/** @type {import('../types.d.ts').LanguageProto<'squirrel'>} */
65
export default {
76
id: 'squirrel',
87
base: clike,
98
grammar ({ base }) {
10-
insertBefore(base, 'string', {
11-
'char': {
12-
pattern: /(^|[^\\"'])'(?:[^\\']|\\(?:[xuU][0-9a-fA-F]{0,8}|[\s\S]))'/,
13-
lookbehind: true,
14-
greedy: true,
15-
},
16-
});
17-
18-
insertBefore(base, 'operator', {
19-
'attribute-punctuation': {
20-
pattern: /<\/|\/>/,
21-
alias: 'important',
22-
},
23-
'lambda': {
24-
pattern: /@(?=\()/,
25-
alias: 'operator',
26-
},
27-
});
28-
299
return {
3010
'comment': [
31-
...toArray(base.comment),
11+
...toArray(/** @type {import('../types.d.ts').GrammarTokens} */ (base).comment),
3212
{
3313
pattern: /#.*/,
3414
greedy: true,
@@ -53,6 +33,25 @@ export default {
5333
'number': /\b(?:0x[0-9a-fA-F]+|\d+(?:\.(?:\d+|[eE][+-]?\d+))?)\b/,
5434
'operator': /\+\+|--|<=>|<[-<]|>>>?|&&?|\|\|?|[-+*/%!=<>]=?|[~^]|::?/,
5535
'punctuation': /[(){}\[\],;.]/,
36+
$insertBefore: {
37+
'string': {
38+
'char': {
39+
pattern: /(^|[^\\"'])'(?:[^\\']|\\(?:[xuU][0-9a-fA-F]{0,8}|[\s\S]))'/,
40+
lookbehind: true,
41+
greedy: true,
42+
},
43+
},
44+
'operator': {
45+
'attribute-punctuation': {
46+
pattern: /<\/|\/>/,
47+
alias: 'important',
48+
},
49+
'lambda': {
50+
pattern: /@(?=\()/,
51+
alias: 'operator',
52+
},
53+
},
54+
},
5655
};
5756
},
5857
};

0 commit comments

Comments
 (0)