1{"version":3,"sources":["../../node_modules/codemirror/mode/fortran/fortran.js"],"names":["mod","exports","module","require","define","amd","CodeMirror","defineMode","words","array","keys","i","length","keywords","builtins","dataTypes","isOperatorChar","litOperator","RegExp","tokenBase","stream","state","match","ch","next","skipToEnd","tokenize","tokenString","test","eatWhile","word","current","toLowerCase","hasOwnProperty","quote","escaped","end","startState","token","eatSpace","style","defineMIME"],"mappings":"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","file":"fortran.min.js","sourcesContent":["// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n\n(function(mod) {\n if (typeof exports == \"object\" && typeof module == \"object\") // CommonJS\n mod(require(\"../../lib/codemirror\"));\n else if (typeof define == \"function\" && define.amd) // AMD\n define([\"../../lib/codemirror\"], mod);\n else // Plain browser env\n mod(CodeMirror);\n})(function(CodeMirror) {\n\"use strict\";\n\nCodeMirror.defineMode(\"fortran\", function() {\n function words(array) {\n var keys = {};\n for (var i = 0; i < array.length; ++i) {\n keys[array[i]] = true;\n }\n return keys;\n }\n\n var keywords = words([\n \"abstract\", \"accept\", \"allocatable\", \"allocate\",\n \"array\", \"assign\", \"asynchronous\", \"backspace\",\n \"bind\", \"block\", \"byte\", \"call\", \"case\",\n \"class\", \"close\", \"common\", \"contains\",\n \"continue\", \"cycle\", \"data\", \"deallocate\",\n \"decode\", \"deferred\", \"dimension\", \"do\",\n \"elemental\", \"else\", \"encode\", \"end\",\n \"endif\", \"entry\", \"enumerator\", \"equivalence\",\n \"exit\", \"external\", \"extrinsic\", \"final\",\n \"forall\", \"format\", \"function\", \"generic\",\n \"go\", \"goto\", \"if\", \"implicit\", \"import\", \"include\",\n \"inquire\", \"intent\", \"interface\", \"intrinsic\",\n \"module\", \"namelist\", \"non_intrinsic\",\n \"non_overridable\", \"none\", \"nopass\",\n \"nullify\", \"open\", \"optional\", \"options\",\n \"parameter\", \"pass\", \"pause\", \"pointer\",\n \"print\", \"private\", \"program\", \"protected\",\n \"public\", \"pure\", \"read\", \"recursive\", \"result\",\n \"return\", \"rewind\", \"save\", \"select\", \"sequence\",\n \"stop\", \"subroutine\", \"target\", \"then\", \"to\", \"type\",\n \"use\", \"value\", \"volatile\", \"where\", \"while\",\n \"write\"]);\n var builtins = words([\"abort\", \"abs\", \"access\", \"achar\", \"acos\",\n \"adjustl\", \"adjustr\", \"aimag\", \"aint\", \"alarm\",\n \"all\", \"allocated\", \"alog\", \"amax\", \"amin\",\n \"amod\", \"and\", \"anint\", \"any\", \"asin\",\n \"associated\", \"atan\", \"besj\", \"besjn\", \"besy\",\n \"besyn\", \"bit_size\", \"btest\", \"cabs\", \"ccos\",\n \"ceiling\", \"cexp\", \"char\", \"chdir\", \"chmod\",\n \"clog\", \"cmplx\", \"command_argument_count\",\n \"complex\", \"conjg\", \"cos\", \"cosh\", \"count\",\n \"cpu_time\", \"cshift\", \"csin\", \"csqrt\", \"ctime\",\n \"c_funloc\", \"c_loc\", \"c_associated\", \"c_null_ptr\",\n \"c_null_funptr\", \"c_f_pointer\", \"c_null_char\",\n \"c_alert\", \"c_backspace\", \"c_form_feed\",\n \"c_new_line\", \"c_carriage_return\",\n \"c_horizontal_tab\", \"c_vertical_tab\", \"dabs\",\n \"dacos\", \"dasin\", \"datan\", \"date_and_time\",\n \"dbesj\", \"dbesj\", \"dbesjn\", \"dbesy\", \"dbesy\",\n \"dbesyn\", \"dble\", \"dcos\", \"dcosh\", \"ddim\", \"derf\",\n \"derfc\", \"dexp\", \"digits\", \"dim\", \"dint\", \"dlog\",\n \"dlog\", \"dmax\", \"dmin\", \"dmod\", \"dnint\",\n \"dot_product\", \"dprod\", \"dsign\", \"dsinh\",\n \"dsin\", \"dsqrt\", \"dtanh\", \"dtan\", \"dtime\",\n \"eoshift\", \"epsilon\", \"erf\", \"erfc\", \"etime\",\n \"exit\", \"exp\", \"exponent\", \"extends_type_of\",\n \"fdate\", \"fget\", \"fgetc\", \"float\", \"floor\",\n \"flush\", \"fnum\", \"fputc\", \"fput\", \"fraction\",\n \"fseek\", \"fstat\", \"ftell\", \"gerror\", \"getarg\",\n \"get_command\", \"get_command_argument\",\n \"get_environment_variable\", \"getcwd\",\n \"getenv\", \"getgid\", \"getlog\", \"getpid\",\n \"getuid\", \"gmtime\", \"hostnm\", \"huge\", \"iabs\",\n \"iachar\", \"iand\", \"iargc\", \"ibclr\", \"ibits\",\n \"ibset\", \"ichar\", \"idate\", \"idim\", \"idint\",\n \"idnint\", \"ieor\", \"ierrno\", \"ifix\", \"imag\",\n \"imagpart\", \"index\", \"int\", \"ior\", \"irand\",\n \"isatty\", \"ishft\", \"ishftc\", \"isign\",\n \"iso_c_binding\", \"is_iostat_end\", \"is_iostat_eor\",\n \"itime\", \"kill\", \"kind\", \"lbound\", \"len\", \"len_trim\",\n \"lge\", \"lgt\", \"link\", \"lle\", \"llt\", \"lnblnk\", \"loc\",\n \"log\", \"logical\", \"long\", \"lshift\", \"lstat\", \"ltime\",\n \"matmul\", \"max\", \"maxexponent\", \"maxloc\", \"maxval\",\n \"mclock\", \"merge\", \"move_alloc\", \"min\", \"minexponent\",\n \"minloc\", \"minval\", \"mod\", \"modulo\", \"mvbits\",\n \"nearest\", \"new_line\", \"nint\", \"not\", \"or\", \"pack\",\n \"perror\", \"precision\", \"present\", \"product\", \"radix\",\n \"rand\", \"random_number\", \"random_seed\", \"range\",\n \"real\", \"realpart\", \"rename\", \"repeat\", \"reshape\",\n \"rrspacing\", \"rshift\", \"same_type_as\", \"scale\",\n \"scan\", \"second\", \"selected_int_kind\",\n \"selected_real_kind\", \"set_exponent\", \"shape\",\n \"short\", \"sign\", \"signal\", \"sinh\", \"sin\", \"sleep\",\n \"sngl\", \"spacing\", \"spread\", \"sqrt\", \"srand\", \"stat\",\n \"sum\", \"symlnk\", \"system\", \"system_clock\", \"tan\",\n \"tanh\", \"time\", \"tiny\", \"transfer\", \"transpose\",\n \"trim\", \"ttynam\", \"ubound\", \"umask\", \"unlink\",\n \"unpack\", \"verify\", \"xor\", \"zabs\", \"zcos\", \"zexp\",\n \"zlog\", \"zsin\", \"zsqrt\"]);\n\n var dataTypes = words([\"c_bool\", \"c_char\", \"c_double\", \"c_double_complex\",\n \"c_float\", \"c_float_complex\", \"c_funptr\", \"c_int\",\n \"c_int16_t\", \"c_int32_t\", \"c_int64_t\", \"c_int8_t\",\n \"c_int_fast16_t\", \"c_int_fast32_t\", \"c_int_fast64_t\",\n \"c_int_fast8_t\", \"c_int_least16_t\", \"c_int_least32_t\",\n \"c_int_least64_t\", \"c_int_least8_t\", \"c_intmax_t\",\n \"c_intptr_t\", \"c_long\", \"c_long_double\",\n \"c_long_double_complex\", \"c_long_long\", \"c_ptr\",\n \"c_short\", \"c_signed_char\", \"c_size_t\", \"character\",\n \"complex\", \"double\", \"integer\", \"logical\", \"real\"]);\n var isOperatorChar = /[+\\-*&=<>\\/\\:]/;\n var litOperator = new RegExp(\"(\\.and\\.|\\.or\\.|\\.eq\\.|\\.lt\\.|\\.le\\.|\\.gt\\.|\\.ge\\.|\\.ne\\.|\\.not\\.|\\.eqv\\.|\\.neqv\\.)\", \"i\");\n\n function tokenBase(stream, state) {\n\n if (stream.match(litOperator)){\n return 'operator';\n }\n\n var ch = stream.next();\n if (ch == \"!\") {\n stream.skipToEnd();\n return \"comment\";\n }\n if (ch == '\"' || ch == \"'\") {\n state.tokenize = tokenString(ch);\n return state.tokenize(stream, state);\n }\n if (/[\\[\\]\\(\\),]/.test(ch)) {\n return null;\n }\n if (/\\d/.test(ch)) {\n stream.eatWhile(/[\\w\\.]/);\n return \"number\";\n }\n if (isOperatorChar.test(ch)) {\n stream.eatWhile(isOperatorChar);\n return \"operator\";\n }\n stream.eatWhile(/[\\w\\$_]/);\n var word = stream.current().toLowerCase();\n\n if (keywords.hasOwnProperty(word)){\n return 'keyword';\n }\n if (builtins.hasOwnProperty(word) || dataTypes.hasOwnProperty(word)) {\n return 'builtin';\n }\n return \"variable\";\n }\n\n function tokenString(quote) {\n return function(stream, state) {\n var escaped = false, next, end = false;\n while ((next = stream.next()) != null) {\n if (next == quote && !escaped) {\n end = true;\n break;\n }\n escaped = !escaped && next == \"\\\\\";\n }\n if (end || !escaped) state.tokenize = null;\n return \"string\";\n };\n }\n\n // Interface\n\n return {\n startState: function() {\n return {tokenize: null};\n },\n\n token: function(stream, state) {\n if (stream.eatSpace()) return null;\n var style = (state.tokenize || tokenBase)(stream, state);\n if (style == \"comment\" || style == \"meta\") return style;\n return style;\n }\n };\n});\n\nCodeMirror.defineMIME(\"text/x-fortran\", \"fortran\");\n\n});\n"]}