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"]}