UNPKG

1.11 kBJavaScriptView Raw
1/*
2Language: Clean
3Author: Camil Staps <info@camilstaps.nl>
4Category: functional
5Website: http://clean.cs.ru.nl
6*/
7
8/** @type LanguageFn */
9function clean(hljs) {
10 const KEYWORDS = [
11 "if",
12 "let",
13 "in",
14 "with",
15 "where",
16 "case",
17 "of",
18 "class",
19 "instance",
20 "otherwise",
21 "implementation",
22 "definition",
23 "system",
24 "module",
25 "from",
26 "import",
27 "qualified",
28 "as",
29 "special",
30 "code",
31 "inline",
32 "foreign",
33 "export",
34 "ccall",
35 "stdcall",
36 "generic",
37 "derive",
38 "infix",
39 "infixl",
40 "infixr"
41 ];
42 return {
43 name: 'Clean',
44 aliases: [
45 'icl',
46 'dcl'
47 ],
48 keywords: {
49 keyword: KEYWORDS,
50 built_in:
51 'Int Real Char Bool',
52 literal:
53 'True False'
54 },
55 contains: [
56 hljs.C_LINE_COMMENT_MODE,
57 hljs.C_BLOCK_COMMENT_MODE,
58 hljs.APOS_STRING_MODE,
59 hljs.QUOTE_STRING_MODE,
60 hljs.C_NUMBER_MODE,
61 { // relevance booster
62 begin: '->|<-[|:]?|#!?|>>=|\\{\\||\\|\\}|:==|=:|<>'
63 }
64 ]
65 };
66}
67
68export { clean as default };