UNPKG

1.34 kBJavaScriptView Raw
1Prism.languages.wasm = {
2 'comment': [
3 /\(;[\s\S]*?;\)/,
4 {
5 pattern: /;;.*/,
6 greedy: true
7 }
8 ],
9 'string': {
10 pattern: /"(?:\\[\s\S]|[^"\\])*"/,
11 greedy: true
12 },
13 'keyword': [
14 {
15 pattern: /\b(?:align|offset)=/,
16 inside: {
17 'operator': /=/
18 }
19 },
20 {
21 pattern: /\b(?:(?:f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))?|memory\.(?:grow|size))\b/,
22 inside: {
23 'punctuation': /\./
24 }
25 },
26 /\b(?:anyfunc|block|br(?:_if|_table)?|call(?:_indirect)?|data|drop|elem|else|end|export|func|get_(?:global|local)|global|if|import|local|loop|memory|module|mut|nop|offset|param|result|return|select|set_(?:global|local)|start|table|tee_local|then|type|unreachable)\b/
27 ],
28 'variable': /\$[\w!#$%&'*+\-./:<=>?@\\^`|~]+/i,
29 'number': /[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/,
30 'punctuation': /[()]/
31};