1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
!(function (t) {
var e =
'\\bvoid\\b|<org>|\\b(?:complex|numeric|pointer(?:\\s*\\([^()]*\\))?|real|string|(?:class|struct)\\s+\\w+|transmorphic)(?:\\s*<org>)?'.replace(
/<org>/g,
'\\b(?:(?:col|row)?vector|matrix|scalar)\\b'
);
t.languages.mata = {
comment: {
pattern:
/\/\/.*|\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/)*\*\//,
greedy: !0,
},
string: { pattern: /"[^"\r\n]*"|[‘`']".*?"[’`']/, greedy: !0 },
'class-name': {
pattern: /(\b(?:class|extends|struct)\s+)\w+(?=\s*(?:\{|\bextends\b))/,
lookbehind: !0,
},
type: {
pattern: RegExp(e),
alias: 'class-name',
inside: {
punctuation: /[()]/,
keyword: /\b(?:class|function|struct|void)\b/,
},
},
keyword:
/\b(?:break|class|continue|do|else|end|extends|external|final|for|function|goto|if|pragma|private|protected|public|return|static|struct|unset|unused|version|virtual|while)\b/,
constant: /\bNULL\b/,
number: {
pattern:
/(^|[^\w.])(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?|\d[a-f0-9]*(?:\.[a-f0-9]+)?x[+-]?\d+)i?(?![\w.])/i,
lookbehind: !0,
},
missing: {
pattern: /(^|[^\w.])(?:\.[a-z]?)(?![\w.])/,
lookbehind: !0,
alias: 'symbol',
},
function: /\b[a-z_]\w*(?=\s*\()/i,
operator: /\.\.|\+\+|--|&&|\|\||:?(?:[!=<>]=|[+\-*/^<>&|:])|[!?=\\#’`']/,
punctuation: /[()[\]{},;.]/,
};
})(Prism);
|