1(function(a){if(typeof exports=="object"&&typeof module=="object")a(require("../../lib/codemirror"));else if(typeof define=="function"&&define.amd)define(["../../lib/codemirror"],a);else a(CodeMirror)})(function(a){"use strict";a.defineMode("mllike",function(b,c){var d={as:"keyword","do":"keyword","else":"keyword",end:"keyword",exception:"keyword",fun:"keyword",functor:"keyword","if":"keyword","in":"keyword",include:"keyword","let":"keyword",of:"keyword",open:"keyword",rec:"keyword",struct:"keyword",then:"keyword",type:"keyword",val:"keyword","while":"keyword","with":"keyword"};var e=c.extraWords||{};for(var f in e){if(e.hasOwnProperty(f)){d[f]=c.extraWords[f]}}var g=[];for(var h in d){g.push(h)}a.registerHelper("hintWords","mllike",g);function i(a,b){var e=a.next();if(e==='"'){b.tokenize=j;return b.tokenize(a,b)}if(e==="{"){if(a.eat("|")){b.longString=true;b.tokenize=l;return b.tokenize(a,b)}}if(e==="("){if(a.eat("*")){b.commentLevel++;b.tokenize=k;return b.tokenize(a,b)}}if(e==="~"||e==="?"){a.eatWhile(/\w/);return"variable-2"}if(e==="`"){a.eatWhile(/\w/);return"quote"}if(e==="/"&&c.slashComments&&a.eat("/")){a.skipToEnd();return"comment"}if(/\d/.test(e)){if(e==="0"&&a.eat(/[bB]/)){a.eatWhile(/[01]/)}if(e==="0"&&a.eat(/[xX]/)){a.eatWhile(/[0-9a-fA-F]/)}if(e==="0"&&a.eat(/[oO]/)){a.eatWhile(/[0-7]/)}else{a.eatWhile(/[\d_]/);if(a.eat(".")){a.eatWhile(/[\d]/)}if(a.eat(/[eE]/)){a.eatWhile(/[\d\-+]/)}}return"number"}if(/[+\-*&%=<>!?|@\.~:]/.test(e)){return"operator"}if(/[\w\xa1-\uffff]/.test(e)){a.eatWhile(/[\w\xa1-\uffff]/);var f=a.current();return d.hasOwnProperty(f)?d[f]:"variable"}return null}function j(a,b){var c,d=false,e=false;while((c=a.next())!=null){if(c==='"'&&!e){d=true;break}e=!e&&c==="\\"}if(d&&!e){b.tokenize=i}return"string"}function k(a,b){var c,d;while(b.commentLevel>0&&(d=a.next())!=null){if(c==="("&&d==="*")b.commentLevel++;if(c==="*"&&d===")")b.commentLevel--;c=d}if(b.commentLevel<=0){b.tokenize=i}return"comment"}function l(a,b){var c,d;while(b.longString&&(d=a.next())!=null){if(c==="|"&&d==="}")b.longString=false;c=d}if(!b.longString){b.tokenize=i}return"string"}return{startState:function(){return{tokenize:i,commentLevel:0,longString:false}},token:function(a,b){if(a.eatSpace())return null;return b.tokenize(a,b)},blockCommentStart:"(*",blockCommentEnd:"*)",lineComment:c.slashComments?"//":null}});a.defineMIME("text/x-ocaml",{name:"mllike",extraWords:{and:"keyword",assert:"keyword",begin:"keyword","class":"keyword",constraint:"keyword",done:"keyword",downto:"keyword",external:"keyword","function":"keyword",initializer:"keyword",lazy:"keyword",match:"keyword",method:"keyword",module:"keyword",mutable:"keyword","new":"keyword",nonrec:"keyword",object:"keyword","private":"keyword",sig:"keyword",to:"keyword","try":"keyword",value:"keyword",virtual:"keyword",when:"keyword",raise:"builtin",failwith:"builtin","true":"builtin","false":"builtin",asr:"builtin",land:"builtin",lor:"builtin",lsl:"builtin",lsr:"builtin",lxor:"builtin",mod:"builtin",or:"builtin",raise_notrace:"builtin",trace:"builtin",exit:"builtin",print_string:"builtin",print_endline:"builtin","int":"type","float":"type",bool:"type","char":"type",string:"type",unit:"type",List:"builtin"}});a.defineMIME("text/x-fsharp",{name:"mllike",extraWords:{"abstract":"keyword",assert:"keyword",base:"keyword",begin:"keyword","class":"keyword","default":"keyword",delegate:"keyword","do!":"keyword",done:"keyword",downcast:"keyword",downto:"keyword",elif:"keyword",extern:"keyword","finally":"keyword","for":"keyword","function":"keyword",global:"keyword",inherit:"keyword",inline:"keyword","interface":"keyword",internal:"keyword",lazy:"keyword","let!":"keyword",match:"keyword",member:"keyword",module:"keyword",mutable:"keyword",namespace:"keyword","new":"keyword","null":"keyword",override:"keyword","private":"keyword","public":"keyword","return!":"keyword","return":"keyword",select:"keyword","static":"keyword",to:"keyword","try":"keyword",upcast:"keyword","use!":"keyword",use:"keyword","void":"keyword",when:"keyword","yield!":"keyword","yield":"keyword",atomic:"keyword","break":"keyword",checked:"keyword",component:"keyword","const":"keyword",constraint:"keyword",constructor:"keyword","continue":"keyword",eager:"keyword",event:"keyword",external:"keyword",fixed:"keyword",method:"keyword",mixin:"keyword",object:"keyword",parallel:"keyword",process:"keyword","protected":"keyword",pure:"keyword",sealed:"keyword",tailcall:"keyword",trait:"keyword",virtual:"keyword","volatile":"keyword",List:"builtin",Seq:"builtin",Map:"builtin",Set:"builtin",Option:"builtin","int":"builtin",string:"builtin",not:"builtin","true":"builtin","false":"builtin",raise:"builtin",failwith:"builtin"},slashComments:true});a.defineMIME("text/x-sml",{name:"mllike",extraWords:{abstype:"keyword",and:"keyword",andalso:"keyword","case":"keyword",datatype:"keyword",fn:"keyword",handle:"keyword",infix:"keyword",infixr:"keyword",local:"keyword",nonfix:"keyword",op:"keyword",orelse:"keyword",raise:"keyword",withtype:"keyword",eqtype:"keyword",sharing:"keyword",sig:"keyword",signature:"keyword",structure:"keyword",where:"keyword","true":"keyword","false":"keyword","int":"builtin",real:"builtin",string:"builtin","char":"builtin",bool:"builtin"},slashComments:true})});
2//# sourceMappingURL=mllike.min.js.map