Fork of daniellemaywood.uk/gleam — Wasm codegen work
2

Configure Feed

Select the types of activity you want to include in your feed.

gleam / compiler-core / templates / docs-js / highlightjs-elixir.min.js
2.6 kB 37 lines
1// SPDX-License-Identifier: Apache-2.0 2// SPDX-FileCopyrightText: 2022 The Gleam contributors 3 4/*! `elixir` grammar compiled for Highlight.js 11.6.0 */ 5(()=>{var e=(()=>{"use strict";return e=>{ 6const n=e.regex,a="[a-zA-Z_][a-zA-Z0-9_.]*(!|\\?)?",i={$pattern:a, 7keyword:["after","alias","and","case","catch","cond","defstruct","defguard","do","else","end","fn","for","if","import","in","not","or","quote","raise","receive","require","reraise","rescue","try","unless","unquote","unquote_splicing","use","when","with|0"], 8literal:["false","nil","true"]},s={className:"subst",begin:/#\{/,end:/\}/, 9keywords:i},c={match:/\\[\s\S]/,scope:"char.escape",relevance:0},r=[{begin:/"/, 10end:/"/},{begin:/'/,end:/'/},{begin:/\//,end:/\//},{begin:/\|/,end:/\|/},{ 11begin:/\(/,end:/\)/},{begin:/\[/,end:/\]/},{begin:/\{/,end:/\}/},{begin:/</, 12end:/>/}],t=e=>({scope:"char.escape",begin:n.concat(/\\/,e),relevance:0}),d={ 13className:"string",begin:"~[a-z](?=[/|([{<\"'])", 14contains:r.map((n=>e.inherit(n,{contains:[t(n.end),c,s]})))},o={ 15className:"string",begin:"~[A-Z](?=[/|([{<\"'])", 16contains:r.map((n=>e.inherit(n,{contains:[t(n.end)]})))},b={className:"regex", 17variants:[{begin:"~r(?=[/|([{<\"'])",contains:r.map((a=>e.inherit(a,{ 18end:n.concat(a.end,/[uismxfU]{0,7}/),contains:[t(a.end),c,s]})))},{ 19begin:"~R(?=[/|([{<\"'])",contains:r.map((a=>e.inherit(a,{ 20end:n.concat(a.end,/[uismxfU]{0,7}/),contains:[t(a.end)]})))}]},g={ 21className:"string",contains:[e.BACKSLASH_ESCAPE,s],variants:[{begin:/"""/, 22end:/"""/},{begin:/'''/,end:/'''/},{begin:/~S"""/,end:/"""/,contains:[]},{ 23begin:/~S"/,end:/"/,contains:[]},{begin:/~S'''/,end:/'''/,contains:[]},{ 24begin:/~S'/,end:/'/,contains:[]},{begin:/'/,end:/'/},{begin:/"/,end:/"/}]},l={ 25className:"function",beginKeywords:"def defp defmacro defmacrop",end:/\B\b/, 26contains:[e.inherit(e.TITLE_MODE,{begin:a,endsParent:!0})]},m=e.inherit(l,{ 27className:"class",beginKeywords:"defimpl defmodule defprotocol defrecord", 28end:/\bdo\b|$|;/}),u=[g,b,o,d,e.HASH_COMMENT_MODE,m,l,{begin:"::"},{ 29className:"symbol",begin:":(?![\\s:])",contains:[g,{ 30begin:"[a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?" 31}],relevance:0},{className:"symbol",begin:a+":(?!:)",relevance:0},{ 32className:"title.class",begin:/(\b[A-Z][a-zA-Z0-9_]+)/,relevance:0},{ 33className:"number", 34begin:"(\\b0o[0-7_]+)|(\\b0b[01_]+)|(\\b0x[0-9a-fA-F_]+)|(-?\\b[0-9][0-9_]*(\\.[0-9_]+([eE][-+]?[0-9]+)?)?)", 35relevance:0},{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))"}] 36;return s.contains=u,{name:"Elixir",aliases:["ex","exs"],keywords:i,contains:u}} 37})();hljs.registerLanguage("elixir",e)})();