home/wuectly/www/media/editors/codemirror/mode/ebnf/ebnf.min.js000060400000005050152457033120020577 0ustar00!(function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)})((function(a){"use strict";a.defineMode("ebnf",(function(b){var c={slash:0,parenthesis:1},d={comment:0,_string:1,characterClass:2},e=null;return b.bracesMode&&(e=a.getMode(b,b.bracesMode)),{startState:function(){return{stringType:null,commentType:null,braced:0,lhs:!0,localState:null,stack:[],inDefinition:!1}},token:function(b,f){if(b){switch(0===f.stack.length&&('"'==b.peek()||"'"==b.peek()?(f.stringType=b.peek(),b.next(),f.stack.unshift(d._string)):b.match("/*")?(f.stack.unshift(d.comment),f.commentType=c.slash):b.match("(*")&&(f.stack.unshift(d.comment),f.commentType=c.parenthesis)),f.stack[0]){case d._string:for(;f.stack[0]===d._string&&!b.eol();)b.peek()===f.stringType?(b.next(),f.stack.shift()):"\\"===b.peek()?(b.next(),b.next()):b.match(/^.[^\\\"\']*/);return f.lhs?"property string":"string";case d.comment:for(;f.stack[0]===d.comment&&!b.eol();)f.commentType===c.slash&&b.match("*/")?(f.stack.shift(),f.commentType=null):f.commentType===c.parenthesis&&b.match("*)")?(f.stack.shift(),f.commentType=null):b.match(/^.[^\*]*/);return"comment";case d.characterClass:for(;f.stack[0]===d.characterClass&&!b.eol();)b.match(/^[^\]\\]+/)||b.match(".")||f.stack.shift();return"operator"}var g=b.peek();if(null!==e&&(f.braced||"{"===g)){null===f.localState&&(f.localState=a.startState(e));var h=e.token(b,f.localState),i=b.current();if(!h)for(var j=0;j>/))return"builtin"}return b.match("//")?(b.skipToEnd(),"comment"):b.match("return")?"operator":b.match(/^[a-zA-Z_][a-zA-Z0-9_]*/)?b.match(/(?=[\(.])/)?"variable":b.match(/(?=[\s\n]*[:=])/)?"def":"variable-2":-1!=["[","]","(",")"].indexOf(b.peek())?(b.next(),"bracket"):(b.eatSpace()||b.next(),null)}}}})),a.defineMIME("text/x-ebnf","ebnf")}));