File manager - Edit - /home/opticamezl/www/newok/haxe.tar
Back
haxe.min.js.gz 0000644 00000006013 15175011762 0007235 0 ustar 00 � ��v�6�}��B���)��'���I�mڦI�$m#is(�S� Q�D�~��HT��{ξ��`��t��Y�JMoٮ�_�rq"�֥�6B�r�^f��fgU��Bv�[j��[e$%q<��a��ì��JS�oHs�PI[�$�,NW��-��8��2~K���|n!�f4Ԝl7�dS�U$����e.)Y�w��G.��nRsr%�X�\��VU�"�l�d;#����!\¦�/$'��49�k��[ڂNR��m��! #~F@��&��7�N8 $��i��5\t��Q�m%�RC�<1���ة��ۥ*$�Yl$y��Be�[p��s��^�s�J])�������P-M��oR÷�ܤ��҅Ғ_��J+���n��B��x!��ya��Fݤbg�B��\,j�h�f�D�]� a>Xdi�-�*[[m�FP��XE1O�k����(���ͭj���%��FAI�r�n�a����A�iY� au�.�2���I3��.�i�n6<�t�AP�3�z��(]I�@��S�ͻJ�)�j]ȕ����u�R�����`��q��- ����b8y4=}�]|��`�� �8~B%�m,���*��V�Рq���[�{�( ���bp*�J�X˻�26(4a;��JE��(�b��H A��&?2��S&?P&~L��+��ߊMԂj!����< ��Ƽ_�fi8�N��]=�SɔO��0��B��$��eHF$�d,ӊ�ʣX�/�;�1OO��b�S����4څ�:ͽ��i�w��+�Z:��4H�|��i�ؘ��D^��$g�i�����ib#ϋ���y����D<Q2$z&]��f;s썼�wk릾:��x�I�!�<$l�<�� lHؘ�xs�֯��S�5+W���1N%�[4_m,����1Rc�y->��H���MZ +Y���<P~ȇ^�k|��yZ�=&���>� V.$�O�~���|�5ꂙ晠,���t^��/ (�1� 쑯�븭R�6z���PŢ�D͒F�u������qN�1ʅuloP�������t��kwe���6L�o�ɢ����f���AHXݱ��hQ�j�/FdH���{��Z�CR�p,Bm��]�������Uk0����r����+q߸ �0g�j�6M!s!����b��¸_�j��zm�XCC�(��+�QD-4-ԕ�ۥ<t���2K�7��$:�B[O1L�X�+)��5��cd��+�s�,A�i��ped�kH�Uj�en�4�21�Nei/�͋[���@J����q�F,I�̵��Z���\SƯ1�֒jP�ٙ�8Q4���ӳ�MXCGYୢ�v��B�(�"�C��]�}Aq�G8_n� Rus6���m֛8[�漢#���, �˵A2�X�4��D}������D͎��瘆-s#��-L��'BC6,�t��}. �����S������n�z��3�?ș��"5W[��cM��b���S�1���%�X9����ڬ�t�.���A�����FI{��_��=o�+[j��sJVp���s��:�o�5��'V�UQ�(ű ��xȸ۩�9V�A!Xr��;8�g��c[;���LFT����a��P���� �>";lbd��C$T����BF�Qe�|�+�Tw�m�Zޞ|C�/�86%�2��7�4�o�eI7 ��\4��K�:���i�A����-�ueY�z�6���{�v7�B�+�8�M�xE��a�4��A7 m?6��KG�o�qEK�T��S�P��K͡tOj��(͊0X�!Ƽ��w �&��cX��wkB��W�;��qE/Pi�B6�P ���D ��xs8B<K� �n�yx�f���U��dG�ս�jߧ�.q�cS���:�hvO䞌g��?�*_w�i��~ߜ���s�qE���U`ϲ;����~�H�߷L���'���L�}�`�15�y�a�r�M�a�>��a������� ,zs���$�zʦ3� �̈́]47��E����i��7:#9�w��CZ:�F��O��?o��Z�q����Ƥ�`�n믠��hȺ�ȿ�L����v���O��>�:����Q�lͿx+0?�4@��w�A+�{���N>��A3���:[�WY�3&����N��=��ͺ�@��C*j9ǴA���9V����(y�#�����W!L�7M���v��u�L�N�f'\��@>��kη=B����A�<>p^M�kxh��i v7�����T�}h`��L������Vȿ 5��d�p@�ɞ\��g��� n��������h�8���� ���p ^�jI2@ڄg��d����+$o���y�'�E���q�x�E���2ե}t��� yf�e��/�)˛R�7�}\�8={��ȹ1�=���v��_��7�����G����������~�N�`d^��5��߶��S�h��'�v7d5��-���.x��U!0��Eu�b1�5X���oʂ���Q�9u�10a�{i4��u�I�7�S?۲�$~�.�k�y8�� E�k���̏�'� �!�χ5�'-��T`$�� �@2��17��ī֒QkN��cǞ��վjl���5�ʽX,��p�0Z��e����j�.{��vm�������{����+7��{ �!���9v�gӹo��W���W�+cռ�x��9!�� ���'K|�� �Lz��3����>�B�<��t ����5�I���J0džw��˨�@����w�"�j꿈+;~�1�8�Ͱ�(��'�{Q�k)�)�k���}o�_�>��*���G�o+�1^���W��!�V\�[[��`> 0'Og}܌�]�8fB�m��l뾵]�j�$����� ���78��ƴu �c�}�S� � �M����������D��4�f��b�lW haxe.js 0000644 00000042236 15175011762 0006043 0 ustar 00 // CodeMirror, copyright (c) by Marijn Haverbeke and others // Distributed under an MIT license: https://codemirror.net/5/LICENSE (function(mod) { if (typeof exports == "object" && typeof module == "object") // CommonJS mod(require("../../lib/codemirror")); else if (typeof define == "function" && define.amd) // AMD define(["../../lib/codemirror"], mod); else // Plain browser env mod(CodeMirror); })(function(CodeMirror) { "use strict"; CodeMirror.defineMode("haxe", function(config, parserConfig) { var indentUnit = config.indentUnit; // Tokenizer function kw(type) {return {type: type, style: "keyword"};} var A = kw("keyword a"), B = kw("keyword b"), C = kw("keyword c"); var operator = kw("operator"), atom = {type: "atom", style: "atom"}, attribute = {type:"attribute", style: "attribute"}; var type = kw("typedef"); var keywords = { "if": A, "while": A, "else": B, "do": B, "try": B, "return": C, "break": C, "continue": C, "new": C, "throw": C, "var": kw("var"), "inline":attribute, "static": attribute, "using":kw("import"), "public": attribute, "private": attribute, "cast": kw("cast"), "import": kw("import"), "macro": kw("macro"), "function": kw("function"), "catch": kw("catch"), "untyped": kw("untyped"), "callback": kw("cb"), "for": kw("for"), "switch": kw("switch"), "case": kw("case"), "default": kw("default"), "in": operator, "never": kw("property_access"), "trace":kw("trace"), "class": type, "abstract":type, "enum":type, "interface":type, "typedef":type, "extends":type, "implements":type, "dynamic":type, "true": atom, "false": atom, "null": atom }; var isOperatorChar = /[+\-*&%=<>!?|]/; function chain(stream, state, f) { state.tokenize = f; return f(stream, state); } function toUnescaped(stream, end) { var escaped = false, next; while ((next = stream.next()) != null) { if (next == end && !escaped) return true; escaped = !escaped && next == "\\"; } } // Used as scratch variables to communicate multiple values without // consing up tons of objects. var type, content; function ret(tp, style, cont) { type = tp; content = cont; return style; } function haxeTokenBase(stream, state) { var ch = stream.next(); if (ch == '"' || ch == "'") { return chain(stream, state, haxeTokenString(ch)); } else if (/[\[\]{}\(\),;\:\.]/.test(ch)) { return ret(ch); } else if (ch == "0" && stream.eat(/x/i)) { stream.eatWhile(/[\da-f]/i); return ret("number", "number"); } else if (/\d/.test(ch) || ch == "-" && stream.eat(/\d/)) { stream.match(/^\d*(?:\.\d*(?!\.))?(?:[eE][+\-]?\d+)?/); return ret("number", "number"); } else if (state.reAllowed && (ch == "~" && stream.eat(/\//))) { toUnescaped(stream, "/"); stream.eatWhile(/[gimsu]/); return ret("regexp", "string-2"); } else if (ch == "/") { if (stream.eat("*")) { return chain(stream, state, haxeTokenComment); } else if (stream.eat("/")) { stream.skipToEnd(); return ret("comment", "comment"); } else { stream.eatWhile(isOperatorChar); return ret("operator", null, stream.current()); } } else if (ch == "#") { stream.skipToEnd(); return ret("conditional", "meta"); } else if (ch == "@") { stream.eat(/:/); stream.eatWhile(/[\w_]/); return ret ("metadata", "meta"); } else if (isOperatorChar.test(ch)) { stream.eatWhile(isOperatorChar); return ret("operator", null, stream.current()); } else { var word; if(/[A-Z]/.test(ch)) { stream.eatWhile(/[\w_<>]/); word = stream.current(); return ret("type", "variable-3", word); } else { stream.eatWhile(/[\w_]/); var word = stream.current(), known = keywords.propertyIsEnumerable(word) && keywords[word]; return (known && state.kwAllowed) ? ret(known.type, known.style, word) : ret("variable", "variable", word); } } } function haxeTokenString(quote) { return function(stream, state) { if (toUnescaped(stream, quote)) state.tokenize = haxeTokenBase; return ret("string", "string"); }; } function haxeTokenComment(stream, state) { var maybeEnd = false, ch; while (ch = stream.next()) { if (ch == "/" && maybeEnd) { state.tokenize = haxeTokenBase; break; } maybeEnd = (ch == "*"); } return ret("comment", "comment"); } // Parser var atomicTypes = {"atom": true, "number": true, "variable": true, "string": true, "regexp": true}; function HaxeLexical(indented, column, type, align, prev, info) { this.indented = indented; this.column = column; this.type = type; this.prev = prev; this.info = info; if (align != null) this.align = align; } function inScope(state, varname) { for (var v = state.localVars; v; v = v.next) if (v.name == varname) return true; } function parseHaxe(state, style, type, content, stream) { var cc = state.cc; // Communicate our context to the combinators. // (Less wasteful than consing up a hundred closures on every call.) cx.state = state; cx.stream = stream; cx.marked = null, cx.cc = cc; if (!state.lexical.hasOwnProperty("align")) state.lexical.align = true; while(true) { var combinator = cc.length ? cc.pop() : statement; if (combinator(type, content)) { while(cc.length && cc[cc.length - 1].lex) cc.pop()(); if (cx.marked) return cx.marked; if (type == "variable" && inScope(state, content)) return "variable-2"; if (type == "variable" && imported(state, content)) return "variable-3"; return style; } } } function imported(state, typename) { if (/[a-z]/.test(typename.charAt(0))) return false; var len = state.importedtypes.length; for (var i = 0; i<len; i++) if(state.importedtypes[i]==typename) return true; } function registerimport(importname) { var state = cx.state; for (var t = state.importedtypes; t; t = t.next) if(t.name == importname) return; state.importedtypes = { name: importname, next: state.importedtypes }; } // Combinator utils var cx = {state: null, column: null, marked: null, cc: null}; function pass() { for (var i = arguments.length - 1; i >= 0; i--) cx.cc.push(arguments[i]); } function cont() { pass.apply(null, arguments); return true; } function inList(name, list) { for (var v = list; v; v = v.next) if (v.name == name) return true; return false; } function register(varname) { var state = cx.state; if (state.context) { cx.marked = "def"; if (inList(varname, state.localVars)) return; state.localVars = {name: varname, next: state.localVars}; } else if (state.globalVars) { if (inList(varname, state.globalVars)) return; state.globalVars = {name: varname, next: state.globalVars}; } } // Combinators var defaultVars = {name: "this", next: null}; function pushcontext() { if (!cx.state.context) cx.state.localVars = defaultVars; cx.state.context = {prev: cx.state.context, vars: cx.state.localVars}; } function popcontext() { cx.state.localVars = cx.state.context.vars; cx.state.context = cx.state.context.prev; } popcontext.lex = true; function pushlex(type, info) { var result = function() { var state = cx.state; state.lexical = new HaxeLexical(state.indented, cx.stream.column(), type, null, state.lexical, info); }; result.lex = true; return result; } function poplex() { var state = cx.state; if (state.lexical.prev) { if (state.lexical.type == ")") state.indented = state.lexical.indented; state.lexical = state.lexical.prev; } } poplex.lex = true; function expect(wanted) { function f(type) { if (type == wanted) return cont(); else if (wanted == ";") return pass(); else return cont(f); } return f; } function statement(type) { if (type == "@") return cont(metadef); if (type == "var") return cont(pushlex("vardef"), vardef1, expect(";"), poplex); if (type == "keyword a") return cont(pushlex("form"), expression, statement, poplex); if (type == "keyword b") return cont(pushlex("form"), statement, poplex); if (type == "{") return cont(pushlex("}"), pushcontext, block, poplex, popcontext); if (type == ";") return cont(); if (type == "attribute") return cont(maybeattribute); if (type == "function") return cont(functiondef); if (type == "for") return cont(pushlex("form"), expect("("), pushlex(")"), forspec1, expect(")"), poplex, statement, poplex); if (type == "variable") return cont(pushlex("stat"), maybelabel); if (type == "switch") return cont(pushlex("form"), expression, pushlex("}", "switch"), expect("{"), block, poplex, poplex); if (type == "case") return cont(expression, expect(":")); if (type == "default") return cont(expect(":")); if (type == "catch") return cont(pushlex("form"), pushcontext, expect("("), funarg, expect(")"), statement, poplex, popcontext); if (type == "import") return cont(importdef, expect(";")); if (type == "typedef") return cont(typedef); return pass(pushlex("stat"), expression, expect(";"), poplex); } function expression(type) { if (atomicTypes.hasOwnProperty(type)) return cont(maybeoperator); if (type == "type" ) return cont(maybeoperator); if (type == "function") return cont(functiondef); if (type == "keyword c") return cont(maybeexpression); if (type == "(") return cont(pushlex(")"), maybeexpression, expect(")"), poplex, maybeoperator); if (type == "operator") return cont(expression); if (type == "[") return cont(pushlex("]"), commasep(maybeexpression, "]"), poplex, maybeoperator); if (type == "{") return cont(pushlex("}"), commasep(objprop, "}"), poplex, maybeoperator); return cont(); } function maybeexpression(type) { if (type.match(/[;\}\)\],]/)) return pass(); return pass(expression); } function maybeoperator(type, value) { if (type == "operator" && /\+\+|--/.test(value)) return cont(maybeoperator); if (type == "operator" || type == ":") return cont(expression); if (type == ";") return; if (type == "(") return cont(pushlex(")"), commasep(expression, ")"), poplex, maybeoperator); if (type == ".") return cont(property, maybeoperator); if (type == "[") return cont(pushlex("]"), expression, expect("]"), poplex, maybeoperator); } function maybeattribute(type) { if (type == "attribute") return cont(maybeattribute); if (type == "function") return cont(functiondef); if (type == "var") return cont(vardef1); } function metadef(type) { if(type == ":") return cont(metadef); if(type == "variable") return cont(metadef); if(type == "(") return cont(pushlex(")"), commasep(metaargs, ")"), poplex, statement); } function metaargs(type) { if(type == "variable") return cont(); } function importdef (type, value) { if(type == "variable" && /[A-Z]/.test(value.charAt(0))) { registerimport(value); return cont(); } else if(type == "variable" || type == "property" || type == "." || value == "*") return cont(importdef); } function typedef (type, value) { if(type == "variable" && /[A-Z]/.test(value.charAt(0))) { registerimport(value); return cont(); } else if (type == "type" && /[A-Z]/.test(value.charAt(0))) { return cont(); } } function maybelabel(type) { if (type == ":") return cont(poplex, statement); return pass(maybeoperator, expect(";"), poplex); } function property(type) { if (type == "variable") {cx.marked = "property"; return cont();} } function objprop(type) { if (type == "variable") cx.marked = "property"; if (atomicTypes.hasOwnProperty(type)) return cont(expect(":"), expression); } function commasep(what, end) { function proceed(type) { if (type == ",") return cont(what, proceed); if (type == end) return cont(); return cont(expect(end)); } return function(type) { if (type == end) return cont(); else return pass(what, proceed); }; } function block(type) { if (type == "}") return cont(); return pass(statement, block); } function vardef1(type, value) { if (type == "variable"){register(value); return cont(typeuse, vardef2);} return cont(); } function vardef2(type, value) { if (value == "=") return cont(expression, vardef2); if (type == ",") return cont(vardef1); } function forspec1(type, value) { if (type == "variable") { register(value); return cont(forin, expression) } else { return pass() } } function forin(_type, value) { if (value == "in") return cont(); } function functiondef(type, value) { //function names starting with upper-case letters are recognised as types, so cludging them together here. if (type == "variable" || type == "type") {register(value); return cont(functiondef);} if (value == "new") return cont(functiondef); if (type == "(") return cont(pushlex(")"), pushcontext, commasep(funarg, ")"), poplex, typeuse, statement, popcontext); } function typeuse(type) { if(type == ":") return cont(typestring); } function typestring(type) { if(type == "type") return cont(); if(type == "variable") return cont(); if(type == "{") return cont(pushlex("}"), commasep(typeprop, "}"), poplex); } function typeprop(type) { if(type == "variable") return cont(typeuse); } function funarg(type, value) { if (type == "variable") {register(value); return cont(typeuse);} } // Interface return { startState: function(basecolumn) { var defaulttypes = ["Int", "Float", "String", "Void", "Std", "Bool", "Dynamic", "Array"]; var state = { tokenize: haxeTokenBase, reAllowed: true, kwAllowed: true, cc: [], lexical: new HaxeLexical((basecolumn || 0) - indentUnit, 0, "block", false), localVars: parserConfig.localVars, importedtypes: defaulttypes, context: parserConfig.localVars && {vars: parserConfig.localVars}, indented: 0 }; if (parserConfig.globalVars && typeof parserConfig.globalVars == "object") state.globalVars = parserConfig.globalVars; return state; }, token: function(stream, state) { if (stream.sol()) { if (!state.lexical.hasOwnProperty("align")) state.lexical.align = false; state.indented = stream.indentation(); } if (stream.eatSpace()) return null; var style = state.tokenize(stream, state); if (type == "comment") return style; state.reAllowed = !!(type == "operator" || type == "keyword c" || type.match(/^[\[{}\(,;:]$/)); state.kwAllowed = type != '.'; return parseHaxe(state, style, type, content, stream); }, indent: function(state, textAfter) { if (state.tokenize != haxeTokenBase) return 0; var firstChar = textAfter && textAfter.charAt(0), lexical = state.lexical; if (lexical.type == "stat" && firstChar == "}") lexical = lexical.prev; var type = lexical.type, closing = firstChar == type; if (type == "vardef") return lexical.indented + 4; else if (type == "form" && firstChar == "{") return lexical.indented; else if (type == "stat" || type == "form") return lexical.indented + indentUnit; else if (lexical.info == "switch" && !closing) return lexical.indented + (/^(?:case|default)\b/.test(textAfter) ? indentUnit : 2 * indentUnit); else if (lexical.align) return lexical.column + (closing ? 0 : 1); else return lexical.indented + (closing ? 0 : indentUnit); }, electricChars: "{}", blockCommentStart: "/*", blockCommentEnd: "*/", lineComment: "//" }; }); CodeMirror.defineMIME("text/x-haxe", "haxe"); CodeMirror.defineMode("hxml", function () { return { startState: function () { return { define: false, inString: false }; }, token: function (stream, state) { var ch = stream.peek(); var sol = stream.sol(); ///* comments */ if (ch == "#") { stream.skipToEnd(); return "comment"; } if (sol && ch == "-") { var style = "variable-2"; stream.eat(/-/); if (stream.peek() == "-") { stream.eat(/-/); style = "keyword a"; } if (stream.peek() == "D") { stream.eat(/[D]/); style = "keyword c"; state.define = true; } stream.eatWhile(/[A-Z]/i); return style; } var ch = stream.peek(); if (state.inString == false && ch == "'") { state.inString = true; stream.next(); } if (state.inString == true) { if (stream.skipTo("'")) { } else { stream.skipToEnd(); } if (stream.peek() == "'") { stream.next(); state.inString = false; } return "string"; } stream.next(); return null; }, lineComment: "#" }; }); CodeMirror.defineMIME("text/x-hxml", "hxml"); }); haxe.min.js 0000644 00000020127 15175011762 0006620 0 ustar 00 (function(w){typeof exports=="object"&&typeof module=="object"?w(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],w):w(CodeMirror)})(function(w){"use strict";w.defineMode("haxe",function(l,x){var g=l.indentUnit;function u(e){return{type:e,style:"keyword"}}var y=u("keyword a"),Z=u("keyword b"),A=u("keyword c"),R=u("operator"),_={type:"atom",style:"atom"},E={type:"attribute",style:"attribute"},c=u("typedef"),U={if:y,while:y,else:Z,do:Z,try:Z,return:A,break:A,continue:A,new:A,throw:A,var:u("var"),inline:E,static:E,using:u("import"),public:E,private:E,cast:u("cast"),import:u("import"),macro:u("macro"),function:u("function"),catch:u("catch"),untyped:u("untyped"),callback:u("cb"),for:u("for"),switch:u("switch"),case:u("case"),default:u("default"),in:R,never:u("property_access"),trace:u("trace"),class:c,abstract:c,enum:c,interface:c,typedef:c,extends:c,implements:c,dynamic:c,true:_,false:_,null:_},j=/[+\-*&%=<>!?|]/;function C(e,r,n){return r.tokenize=n,n(e,r)}function H(e,r){for(var n=!1,i;(i=e.next())!=null;){if(i==r&&!n)return!0;n=!n&&i=="\\"}}var c,L;function d(e,r,n){return c=e,L=n,r}function T(e,r){var n=e.next();if(n=='"'||n=="'")return C(e,r,X(n));if(/[\[\]{}\(\),;\:\.]/.test(n))return d(n);if(n=="0"&&e.eat(/x/i))return e.eatWhile(/[\da-f]/i),d("number","number");if(/\d/.test(n)||n=="-"&&e.eat(/\d/))return e.match(/^\d*(?:\.\d*(?!\.))?(?:[eE][+\-]?\d+)?/),d("number","number");if(r.reAllowed&&n=="~"&&e.eat(/\//))return H(e,"/"),e.eatWhile(/[gimsu]/),d("regexp","string-2");if(n=="/")return e.eat("*")?C(e,r,Y):e.eat("/")?(e.skipToEnd(),d("comment","comment")):(e.eatWhile(j),d("operator",null,e.current()));if(n=="#")return e.skipToEnd(),d("conditional","meta");if(n=="@")return e.eat(/:/),e.eatWhile(/[\w_]/),d("metadata","meta");if(j.test(n))return e.eatWhile(j),d("operator",null,e.current());var i;if(/[A-Z]/.test(n))return e.eatWhile(/[\w_<>]/),i=e.current(),d("type","variable-3",i);e.eatWhile(/[\w_]/);var i=e.current(),p=U.propertyIsEnumerable(i)&&U[i];return p&&r.kwAllowed?d(p.type,p.style,i):d("variable","variable",i)}function X(e){return function(r,n){return H(r,e)&&(n.tokenize=T),d("string","string")}}function Y(e,r){for(var n=!1,i;i=e.next();){if(i=="/"&&n){r.tokenize=T;break}n=i=="*"}return d("comment","comment")}var q={atom:!0,number:!0,variable:!0,string:!0,regexp:!0};function F(e,r,n,i,p,b){this.indented=e,this.column=r,this.type=n,this.prev=p,this.info=b,i!=null&&(this.align=i)}function ee(e,r){for(var n=e.localVars;n;n=n.next)if(n.name==r)return!0}function re(e,r,n,i,p){var b=e.cc;for(a.state=e,a.stream=p,a.marked=null,a.cc=b,e.lexical.hasOwnProperty("align")||(e.lexical.align=!0);;){var pe=b.length?b.pop():k;if(pe(n,i)){for(;b.length&&b[b.length-1].lex;)b.pop()();return a.marked?a.marked:n=="variable"&&ee(e,i)?"variable-2":n=="variable"&&ne(e,i)?"variable-3":r}}}function ne(e,r){if(/[a-z]/.test(r.charAt(0)))return!1;for(var n=e.importedtypes.length,i=0;i<n;i++)if(e.importedtypes[i]==r)return!0}function $(e){for(var r=a.state,n=r.importedtypes;n;n=n.next)if(n.name==e)return;r.importedtypes={name:e,next:r.importedtypes}}var a={state:null,column:null,marked:null,cc:null};function m(){for(var e=arguments.length-1;e>=0;e--)a.cc.push(arguments[e])}function t(){return m.apply(null,arguments),!0}function G(e,r){for(var n=r;n;n=n.next)if(n.name==e)return!0;return!1}function W(e){var r=a.state;if(r.context){if(a.marked="def",G(e,r.localVars))return;r.localVars={name:e,next:r.localVars}}else if(r.globalVars){if(G(e,r.globalVars))return;r.globalVars={name:e,next:r.globalVars}}}var te={name:"this",next:null};function I(){a.state.context||(a.state.localVars=te),a.state.context={prev:a.state.context,vars:a.state.localVars}}function z(){a.state.localVars=a.state.context.vars,a.state.context=a.state.context.prev}z.lex=!0;function o(e,r){var n=function(){var i=a.state;i.lexical=new F(i.indented,a.stream.column(),e,null,i.lexical,r)};return n.lex=!0,n}function f(){var e=a.state;e.lexical.prev&&(e.lexical.type==")"&&(e.indented=e.lexical.indented),e.lexical=e.lexical.prev)}f.lex=!0;function s(e){function r(n){return n==e?t():e==";"?m():t(r)}return r}function k(e){return e=="@"?t(P):e=="var"?t(o("vardef"),D,s(";"),f):e=="keyword a"?t(o("form"),h,k,f):e=="keyword b"?t(o("form"),k,f):e=="{"?t(o("}"),I,B,f,z):e==";"?t():e=="attribute"?t(J):e=="function"?t(S):e=="for"?t(o("form"),s("("),o(")"),le,s(")"),f,k,f):e=="variable"?t(o("stat"),ae):e=="switch"?t(o("form"),h,o("}","switch"),s("{"),B,f,f):e=="case"?t(h,s(":")):e=="default"?t(s(":")):e=="catch"?t(o("form"),I,s("("),Q,s(")"),k,f,z):e=="import"?t(K,s(";")):e=="typedef"?t(ue):m(o("stat"),h,s(";"),f)}function h(e){return q.hasOwnProperty(e)||e=="type"?t(v):e=="function"?t(S):e=="keyword c"?t(M):e=="("?t(o(")"),M,s(")"),f,v):e=="operator"?t(h):e=="["?t(o("]"),V(M,"]"),f,v):e=="{"?t(o("}"),V(oe,"}"),f,v):t()}function M(e){return e.match(/[;\}\)\],]/)?m():m(h)}function v(e,r){if(e=="operator"&&/\+\+|--/.test(r))return t(v);if(e=="operator"||e==":")return t(h);if(e!=";"){if(e=="(")return t(o(")"),V(h,")"),f,v);if(e==".")return t(fe,v);if(e=="[")return t(o("]"),h,s("]"),f,v)}}function J(e){if(e=="attribute")return t(J);if(e=="function")return t(S);if(e=="var")return t(D)}function P(e){if(e==":"||e=="variable")return t(P);if(e=="(")return t(o(")"),V(ie,")"),f,k)}function ie(e){if(e=="variable")return t()}function K(e,r){if(e=="variable"&&/[A-Z]/.test(r.charAt(0)))return $(r),t();if(e=="variable"||e=="property"||e=="."||r=="*")return t(K)}function ue(e,r){if(e=="variable"&&/[A-Z]/.test(r.charAt(0)))return $(r),t();if(e=="type"&&/[A-Z]/.test(r.charAt(0)))return t()}function ae(e){return e==":"?t(f,k):m(v,s(";"),f)}function fe(e){if(e=="variable")return a.marked="property",t()}function oe(e){if(e=="variable"&&(a.marked="property"),q.hasOwnProperty(e))return t(s(":"),h)}function V(e,r){function n(i){return i==","?t(e,n):i==r?t():t(s(r))}return function(i){return i==r?t():m(e,n)}}function B(e){return e=="}"?t():m(k,B)}function D(e,r){return e=="variable"?(W(r),t(O,N)):t()}function N(e,r){if(r=="=")return t(h,N);if(e==",")return t(D)}function le(e,r){return e=="variable"?(W(r),t(ce,h)):m()}function ce(e,r){if(r=="in")return t()}function S(e,r){if(e=="variable"||e=="type")return W(r),t(S);if(r=="new")return t(S);if(e=="(")return t(o(")"),I,V(Q,")"),f,O,k,z)}function O(e){if(e==":")return t(se)}function se(e){if(e=="type"||e=="variable")return t();if(e=="{")return t(o("}"),V(de,"}"),f)}function de(e){if(e=="variable")return t(O)}function Q(e,r){if(e=="variable")return W(r),t(O)}return{startState:function(e){var r=["Int","Float","String","Void","Std","Bool","Dynamic","Array"],n={tokenize:T,reAllowed:!0,kwAllowed:!0,cc:[],lexical:new F((e||0)-g,0,"block",!1),localVars:x.localVars,importedtypes:r,context:x.localVars&&{vars:x.localVars},indented:0};return x.globalVars&&typeof x.globalVars=="object"&&(n.globalVars=x.globalVars),n},token:function(e,r){if(e.sol()&&(r.lexical.hasOwnProperty("align")||(r.lexical.align=!1),r.indented=e.indentation()),e.eatSpace())return null;var n=r.tokenize(e,r);return c=="comment"?n:(r.reAllowed=!!(c=="operator"||c=="keyword c"||c.match(/^[\[{}\(,;:]$/)),r.kwAllowed=c!=".",re(r,n,c,L,e))},indent:function(e,r){if(e.tokenize!=T)return 0;var n=r&&r.charAt(0),i=e.lexical;i.type=="stat"&&n=="}"&&(i=i.prev);var p=i.type,b=n==p;return p=="vardef"?i.indented+4:p=="form"&&n=="{"?i.indented:p=="stat"||p=="form"?i.indented+g:i.info=="switch"&&!b?i.indented+(/^(?:case|default)\b/.test(r)?g:2*g):i.align?i.column+(b?0:1):i.indented+(b?0:g)},electricChars:"{}",blockCommentStart:"/*",blockCommentEnd:"*/",lineComment:"//"}}),w.defineMIME("text/x-haxe","haxe"),w.defineMode("hxml",function(){return{startState:function(){return{define:!1,inString:!1}},token:function(l,x){var y=l.peek(),g=l.sol();if(y=="#")return l.skipToEnd(),"comment";if(g&&y=="-"){var u="variable-2";return l.eat(/-/),l.peek()=="-"&&(l.eat(/-/),u="keyword a"),l.peek()=="D"&&(l.eat(/[D]/),u="keyword c",x.define=!0),l.eatWhile(/[A-Z]/i),u}var y=l.peek();return x.inString==!1&&y=="'"&&(x.inString=!0,l.next()),x.inString==!0?(l.skipTo("'")||l.skipToEnd(),l.peek()=="'"&&(l.next(),x.inString=!1),"string"):(l.next(),null)},lineComment:"#"}}),w.defineMIME("text/x-hxml","hxml")});
| ver. 1.4 |
Github
|
.
| PHP 8.3.23 | Generation time: 0 |
proxy
|
phpinfo
|
Settings