Liferay.Loader.define("liferay!layout-content-page-editor-web$codemirror@5.65.2/mode/dylan/dylan",["module","exports","require","../../lib/codemirror"],(function(e,n,t){window,function(e){"use strict";function forEach(e,n){for(var t=0;t<e.length;t++)n(e[t],t)}function some(e,n){for(var t=0;t<e.length;t++)if(n(e[t],t))return!0;return!1}e.defineMode("dylan",(function(e){var n={unnamedDefinition:["interface"],namedDefinition:["module","library","macro","C-struct","C-union","C-function","C-callable-wrapper"],typeParameterizedDefinition:["class","C-subtype","C-mapped-subtype"],otherParameterizedDefinition:["method","function","C-variable","C-address"],constantSimpleDefinition:["constant"],variableSimpleDefinition:["variable"],otherSimpleDefinition:["generic","domain","C-pointer-type","table"],statement:["if","block","begin","method","case","for","select","when","unless","until","while","iterate","profiling","dynamic-bind"],separator:["finally","exception","cleanup","else","elseif","afterwards"],other:["above","below","by","from","handler","in","instance","let","local","otherwise","slot","subclass","then","to","keyed-by","virtual"],signalingCalls:["signal","error","cerror","break","check-type","abort"]};n.otherDefinition=n.unnamedDefinition.concat(n.namedDefinition).concat(n.otherParameterizedDefinition),n.definition=n.typeParameterizedDefinition.concat(n.otherDefinition),n.parameterizedDefinition=n.typeParameterizedDefinition.concat(n.otherParameterizedDefinition),n.simpleDefinition=n.constantSimpleDefinition.concat(n.variableSimpleDefinition).concat(n.otherSimpleDefinition),n.keyword=n.statement.concat(n.separator).concat(n.other);var t="[-_a-zA-Z?!*@<>$%]+",i=new RegExp("^"+t),r={symbolKeyword:t+":",symbolClass:"<"+t+">",symbolGlobal:"\\*"+t+"\\*",symbolConstant:"\\$"+t},o={symbolKeyword:"atom",symbolClass:"tag",symbolGlobal:"variable-2",symbolConstant:"variable-3"};for(var a in r)r.hasOwnProperty(a)&&(r[a]=new RegExp("^"+r[a]));r.keyword=[/^with(?:out)?-[-_a-zA-Z?!*@<>$%]+/];var l={keyword:"keyword",definition:"def",simpleDefinition:"def",signalingCalls:"builtin"},f={},c={};function chain(e,n,t){return n.tokenize=t,t(e,n)}function tokenBase(e,n){var t=e.peek();if("'"==t||'"'==t)return e.next(),chain(e,n,tokenString(t,"string"));if("/"==t){if(e.next(),e.eat("*"))return chain(e,n,tokenComment);if(e.eat("/"))return e.skipToEnd(),"comment";e.backUp(1)}else if(/[+\-\d\.]/.test(t)){if(e.match(/^[+-]?[0-9]*\.[0-9]*([esdx][+-]?[0-9]+)?/i)||e.match(/^[+-]?[0-9]+([esdx][+-]?[0-9]+)/i)||e.match(/^[+-]?\d+/))return"number"}else{if("#"==t)return e.next(),'"'==(t=e.peek())?(e.next(),chain(e,n,tokenString('"',"string"))):"b"==t?(e.next(),e.eatWhile(/[01]/),"number"):"x"==t?(e.next(),e.eatWhile(/[\da-f]/i),"number"):"o"==t?(e.next(),e.eatWhile(/[0-7]/),"number"):"#"==t?(e.next(),"punctuation"):"["==t||"("==t?(e.next(),"bracket"):e.match(/f|t|all-keys|include|key|next|rest/i)?"atom":(e.eatWhile(/[-a-zA-Z]/),"error");if("~"==t)return e.next(),"="==(t=e.peek())?(e.next(),"="==(t=e.peek())?(e.next(),"operator"):"operator"):"operator";if(":"==t){if(e.next(),"="==(t=e.peek()))return e.next(),"operator";if(":"==t)return e.next(),"punctuation"}else{if(-1!="[](){}".indexOf(t))return e.next(),"bracket";if(-1!=".,".indexOf(t))return e.next(),"punctuation";if(e.match("end"))return"keyword"}}for(var a in r)if(r.hasOwnProperty(a)){var l=r[a];if(l instanceof Array&&some(l,(function(n){return e.match(n)}))||e.match(l))return o[a]}return/[+\-*\/^=<>&|]/.test(t)?(e.next(),"operator"):e.match("define")?"def":(e.eatWhile(/[\w\-]/),f.hasOwnProperty(e.current())?c[e.current()]:e.current().match(i)?"variable":(e.next(),"variable-2"))}function tokenComment(e,n){for(var t,i=!1,r=!1,o=0;t=e.next();){if("/"==t&&i){if(!(o>0)){n.tokenize=tokenBase;break}o--}else"*"==t&&r&&o++;i="*"==t,r="/"==t}return"comment"}function tokenString(e,n){return function(t,i){for(var r,o=!1,a=!1;null!=(r=t.next());){if(r==e&&!o){a=!0;break}o=!o&&"\\"==r}return!a&&o||(i.tokenize=tokenBase),n}}return forEach(["keyword","definition","simpleDefinition","signalingCalls"],(function(e){forEach(n[e],(function(n){f[n]=e,c[n]=l[e]}))})),{startState:function(){return{tokenize:tokenBase,currentIndent:0}},token:function(e,n){return e.eatSpace()?null:n.tokenize(e,n)},blockCommentStart:"/*",blockCommentEnd:"*/"}})),e.defineMIME("text/x-dylan","dylan")}("object"==typeof n&&"object"==typeof e?t("../../lib/codemirror"):CodeMirror)}));
//# sourceMappingURL=dylan.js.map