LocalCDN-Firefox-Chrome-Brave/resources/highlight.js/11.9.0/reasonml.min.jsm

18 lines
1.5 KiB
JavaScript

/*! `reasonml` grammar compiled for Highlight.js 11.9.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"ReasonML",aliases:["re"],
keywords:{$pattern:/[a-z_]\w*!?/,
keyword:["and","as","asr","assert","begin","class","constraint","do","done","downto","else","end","esfun","exception","external","for","fun","function","functor","if","in","include","inherit","initializer","land","lazy","let","lor","lsl","lsr","lxor","mod","module","mutable","new","nonrec","object","of","open","or","pri","pub","rec","sig","struct","switch","then","to","try","type","val","virtual","when","while","with"],
built_in:["array","bool","bytes","char","exn|5","float","int","int32","int64","list","lazy_t|5","nativeint|5","ref","string","unit"],
literal:["true","false"]},illegal:/(:-|:=|\$\{|\+=)/,contains:[{scope:"literal",
match:/\[(\|\|)?\]|\(\)/,relevance:0
},e.C_LINE_COMMENT_MODE,e.COMMENT(/\/\*/,/\*\//,{illegal:/^(#,\/\/)/}),{
scope:"symbol",match:/\'[A-Za-z_](?!\')[\w\']*/},{scope:"type",
match:/`[A-Z][\w\']*/},{scope:"type",match:/\b[A-Z][\w\']*/,relevance:0},{
match:/[a-z_]\w*\'[\w\']*/,relevance:0},{scope:"operator",
match:/\s+(\|\||\+[\+\.]?|\*[\*\/\.]?|\/[\.]?|\.\.\.|\|>|&&|===?)\s+/,
relevance:0},e.inherit(e.APOS_STRING_MODE,{scope:"string",relevance:0
}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{scope:"number",variants:[{
match:/\b0[xX][a-fA-F0-9_]+[Lln]?/},{match:/\b0[oO][0-7_]+[Lln]?/},{
match:/\b0[bB][01_]+[Lln]?/},{
match:/\b[0-9][0-9_]*([Lln]|(\.[0-9_]*)?([eE][-+]?[0-9_]+)?)/}],relevance:0}]})
})();hljs.registerLanguage("reasonml",e)})();