openrat-cms

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

elm.min.js (2304B)


      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('elm',function(){function n(e,t,r){t(r);return r(e,t)};var l=/[a-z_]/,c=/[A-Z]/,t=/[0-9]/,s=/[0-9A-Fa-f]/,m=/[0-7]/,f=/[a-z_A-Z0-9']/,r=/[-!#$%&*+.\/<=>?@\\^|~:\u03BB\u2192]/,h=/[(),;[\]`{}]/,u=/[ \t\v\f]/;function e(){return function(e,v){if(e.eatWhile(u)){return null};var i=e.next();if(h.test(i)){if(i=='{'&&e.eat('-')){var p='comment';if(e.eat('#'))p='meta';return n(e,v,a(p,1))};return null};if(i=='\''){if(e.eat('\\'))e.next();else e.next();if(e.eat('\''))return'string';return'error'};if(i=='"'){return n(e,v,o)};if(c.test(i)){e.eatWhile(f);if(e.eat('.'))return'qualifier';return'variable-2'};if(l.test(i)){var x=e.pos===1;e.eatWhile(f);return x?'type':'variable'};if(t.test(i)){if(i=='0'){if(e.eat(/[xX]/)){e.eatWhile(s);return'integer'};if(e.eat(/[oO]/)){e.eatWhile(m);return'number'}};e.eatWhile(t);var p='number';if(e.eat('.')){p='number';e.eatWhile(t)};if(e.eat(/[eE]/)){p='number';e.eat(/[-+]/);e.eatWhile(t)};return p};if(r.test(i)){if(i=='-'&&e.eat(/-/)){e.eatWhile(/-/);if(!e.eat(r)){e.skipToEnd();return'comment'}};e.eatWhile(r);return'builtin'};return'error'}};function a(t,r){if(r==0){return e()};return function(n,i){var f=r;while(!n.eol()){var u=n.next();if(u=='{'&&n.eat('-')){++f}
      2 else if(u=='-'&&n.eat('}')){--f;if(f==0){i(e());return t}}};i(a(t,f));return t}};function o(t,r){while(!t.eol()){var n=t.next();if(n=='"'){r(e());return'string'};if(n=='\\'){if(t.eol()||t.eat(u)){r(v);return'string'};if(!t.eat('&'))t.next()}};r(e());return'error'};function v(t,r){if(t.eat('\\')){return n(t,r,o)};t.next();r(e());return'error'};var i=(function(){var r={};var t=['case','of','as','if','then','else','let','in','infix','infixl','infixr','type','alias','input','output','foreign','loopback','module','where','import','exposing','_','..','|',':','=','\\','"','->','<-'];for(var e=t.length;e--;)r[t[e]]='keyword';return r})();return{startState:function(){return{f:e()}},copyState:function(e){return{f:e.f}},token:function(e,t){var n=t.f(e,function(e){t.f=e}),r=e.current();return(i.hasOwnProperty(r))?i[r]:n}}});e.defineMIME('text/x-elm','elm')});