openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

haskell.min.js (4660B)


      1 (function(e){if(typeof exports=="object"&&typeof module=="object")e(require("../../lib/codemirror"));else if(typeof define=="function"&&define.amd)define(["../../lib/codemirror"],e);else e(CodeMirror)})(function(e){"use strict";e.defineMode("haskell",function(e,r){function a(e,r,t){r(t);return t(e,r)};var c=/[a-z_]/,d=/[A-Z]/,n=/\d/,m=/[0-9A-Fa-f]/,h=/[0-7]/,l=/[a-z_A-Z0-9'\xa1-\uffff]/,i=/[-!#$%&*+.\/<=>?@\\^|~:]/,p=/[(),;[\]`{}]/,u=/[ \t\v\f]/;function t(e,t){if(e.eatWhile(u)){return null};var r=e.next();if(p.test(r)){if(r=="{"&&e.eat("-")){var o="comment";if(e.eat("#")){o="meta"};return a(e,t,f(o,1))};return null};if(r=="'"){if(e.eat("\\")){e.next()}
      2 else{e.next()};if(e.eat("'")){return"string"};return"string error"};if(r=="\""){return a(e,t,s)};if(d.test(r)){e.eatWhile(l);if(e.eat(".")){return"qualifier"};return"variable-2"};if(c.test(r)){e.eatWhile(l);return"variable"};if(n.test(r)){if(r=="0"){if(e.eat(/[xX]/)){e.eatWhile(m);return"integer"};if(e.eat(/[oO]/)){e.eatWhile(h);return"number"}};e.eatWhile(n);var o="number";if(e.match(/^\.\d+/)){o="number"};if(e.eat(/[eE]/)){o="number";e.eat(/[-+]/);e.eatWhile(n)};return o};if(r=="."&&e.eat("."))return"keyword";if(i.test(r)){if(r=="-"&&e.eat(/-/)){e.eatWhile(/-/);if(!e.eat(i)){e.skipToEnd();return"comment"}};var o="variable";if(r==":"){o="variable-2"};e.eatWhile(i);return o};return"error"};function f(e,r){if(r==0){return t};return function(n,i){var a=r;while(!n.eol()){var o=n.next();if(o=="{"&&n.eat("-")){++a}
      3 else if(o=="-"&&n.eat("}")){--a;if(a==0){i(t);return e}}};i(f(e,a));return e}};function s(e,r){while(!e.eol()){var n=e.next();if(n=="\""){r(t);return"string"};if(n=="\\"){if(e.eol()||e.eat(u)){r(g);return"string"};if(e.eat("&")){}
      4 else{e.next()}}};r(t);return"string error"};function g(e,r){if(e.eat("\\")){return a(e,r,s)};e.next();r(t);return"error"};var o=(function(){var i={};function e(e){return function(){for(var r=0;r<arguments.length;r++)i[arguments[r]]=e}};e("keyword")("case","class","data","default","deriving","do","else","foreign","if","import","in","infix","infixl","infixr","instance","let","module","newtype","of","then","type","where","_");e("keyword")("\.\.",":","::","=","\\","<-","->","@","~","=>");e("builtin")("!!","$!","$","&&","+","++","-",".","/","/=","<","<=","=<<","==",">",">=",">>",">>=","^","^^","||","*","**");e("builtin")("Bool","Bounded","Char","Double","EQ","Either","Enum","Eq","False","FilePath","Float","Floating","Fractional","Functor","GT","IO","IOError","Int","Integer","Integral","Just","LT","Left","Maybe","Monad","Nothing","Num","Ord","Ordering","Rational","Read","ReadS","Real","RealFloat","RealFrac","Right","Show","ShowS","String","True");e("builtin")("abs","acos","acosh","all","and","any","appendFile","asTypeOf","asin","asinh","atan","atan2","atanh","break","catch","ceiling","compare","concat","concatMap","const","cos","cosh","curry","cycle","decodeFloat","div","divMod","drop","dropWhile","either","elem","encodeFloat","enumFrom","enumFromThen","enumFromThenTo","enumFromTo","error","even","exp","exponent","fail","filter","flip","floatDigits","floatRadix","floatRange","floor","fmap","foldl","foldl1","foldr","foldr1","fromEnum","fromInteger","fromIntegral","fromRational","fst","gcd","getChar","getContents","getLine","head","id","init","interact","ioError","isDenormalized","isIEEE","isInfinite","isNaN","isNegativeZero","iterate","last","lcm","length","lex","lines","log","logBase","lookup","map","mapM","mapM_","max","maxBound","maximum","maybe","min","minBound","minimum","mod","negate","not","notElem","null","odd","or","otherwise","pi","pred","print","product","properFraction","putChar","putStr","putStrLn","quot","quotRem","read","readFile","readIO","readList","readLn","readParen","reads","readsPrec","realToFrac","recip","rem","repeat","replicate","return","reverse","round","scaleFloat","scanl","scanl1","scanr","scanr1","seq","sequence","sequence_","show","showChar","showList","showParen","showString","shows","showsPrec","significand","signum","sin","sinh","snd","span","splitAt","sqrt","subtract","succ","sum","tail","take","takeWhile","tan","tanh","toEnum","toInteger","toRational","truncate","uncurry","undefined","unlines","until","unwords","unzip","unzip3","userError","words","writeFile","zip","zip3","zipWith","zipWith3");var t=r.overrideKeywords;if(t)for(var n in t)if(t.hasOwnProperty(n))i[n]=t[n];return i})();return{startState:function(){return{f:t}},copyState:function(e){return{f:e.f}},token:function(e,r){var n=r.f(e,function(e){r.f=e}),t=e.current();return o.hasOwnProperty(t)?o[t]:n},blockCommentStart:"{-",blockCommentEnd:"-}",lineComment:"--"}});e.defineMIME("text/x-haskell","haskell")});