summaryrefslogtreecommitdiffstats
path: root/public/prism/prism-idris.min.js
blob: 98bac8e85d42d31e7ce74fb17d064eb3d0f06a72 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
(Prism.languages.idris = Prism.languages.extend('haskell', {
  comment: { pattern: /(?:(?:--|\|\|\|).*$|\{-[\s\S]*?-\})/m },
  keyword:
    /\b(?:Type|case|class|codata|constructor|corecord|data|do|dsl|else|export|if|implementation|implicit|import|impossible|in|infix|infixl|infixr|instance|interface|let|module|mutual|namespace|of|parameters|partial|postulate|private|proof|public|quoteGoal|record|rewrite|syntax|then|total|using|where|with)\b/,
  builtin: void 0,
})),
  Prism.languages.insertBefore('idris', 'keyword', {
    'import-statement': {
      pattern: /(^\s*import\s+)(?:[A-Z][\w']*)(?:\.[A-Z][\w']*)*/m,
      lookbehind: !0,
      inside: { punctuation: /\./ },
    },
  }),
  (Prism.languages.idr = Prism.languages.idris);
variable: /^\$\w+$/, 'interpolation-punctuation': { pattern: /^\$\{|\}$/, alias: 'punctuation', }, expression: { pattern: /[\s\S]+/, inside: null, // see below }, }, }, string: /[\s\S]+/, }, }, keyword: /\b(?:else|if)\b/, boolean: /\b(?:false|true)\b/, 'builtin-function': { // a few functions get special highlighting to improve readability pattern: /\b(?:assert|defined|foreach|import|pool|print|template|tool|toolchain)(?=\s*\()/i, alias: 'keyword', }, function: /\b[a-z_]\w*(?=\s*\()/i, constant: /\b(?:current_cpu|current_os|current_toolchain|default_toolchain|host_cpu|host_os|root_build_dir|root_gen_dir|root_out_dir|target_cpu|target_gen_dir|target_os|target_out_dir)\b/, number: /-?\b\d+\b/, operator: /[-+!=<>]=?|&&|\|\|/, punctuation: /[(){}[\],.]/, }; Prism.languages.gn['string-literal'].inside['interpolation'].inside[ 'expression' ].inside = Prism.languages.gn; Prism.languages.gni = Prism.languages.gn;