blob: 3d8e513e26e844f90cba0a594c63d8d24005540f [file] [log] [blame]
{"version":3,"sources":["webpack://lib/./node_modules/react-syntax-highlighter/node_modules/highlight.js/lib/languages/moonscript.js"],"names":[],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA","file":"react-syntax-highlighter_languages_highlight_moonscript.render-page.js","sourcesContent":["/*\nLanguage: MoonScript\nAuthor: Billy Quith <chinbillybilbo@gmail.com>\nDescription: MoonScript is a programming language that transcompiles to Lua.\nOrigin: coffeescript.js\nWebsite: http://moonscript.org/\nCategory: scripting\n*/\n\nfunction moonscript(hljs) {\n const KEYWORDS = {\n keyword:\n // Moonscript keywords\n 'if then not for in while do return else elseif break continue switch and or ' +\n 'unless when class extends super local import export from using',\n literal:\n 'true false nil',\n built_in:\n '_G _VERSION assert collectgarbage dofile error getfenv getmetatable ipairs load ' +\n 'loadfile loadstring module next pairs pcall print rawequal rawget rawset require ' +\n 'select setfenv setmetatable tonumber tostring type unpack xpcall coroutine debug ' +\n 'io math os package string table'\n };\n const JS_IDENT_RE = '[A-Za-z$_][0-9A-Za-z$_]*';\n const SUBST = {\n className: 'subst',\n begin: /#\\{/,\n end: /\\}/,\n keywords: KEYWORDS\n };\n const EXPRESSIONS = [\n hljs.inherit(hljs.C_NUMBER_MODE,\n {\n starts: {\n end: '(\\\\s*/)?',\n relevance: 0\n }\n }), // a number tries to eat the following slash to prevent treating it as a regexp\n {\n className: 'string',\n variants: [\n {\n begin: /'/,\n end: /'/,\n contains: [ hljs.BACKSLASH_ESCAPE ]\n },\n {\n begin: /\"/,\n end: /\"/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ]\n }\n ]\n },\n {\n className: 'built_in',\n begin: '@__' + hljs.IDENT_RE\n },\n {\n begin: '@' + hljs.IDENT_RE // relevance booster on par with CoffeeScript\n },\n {\n begin: hljs.IDENT_RE + '\\\\\\\\' + hljs.IDENT_RE // inst\\method\n }\n ];\n SUBST.contains = EXPRESSIONS;\n\n const TITLE = hljs.inherit(hljs.TITLE_MODE, {\n begin: JS_IDENT_RE\n });\n const POSSIBLE_PARAMS_RE = '(\\\\(.*\\\\)\\\\s*)?\\\\B[-=]>';\n const PARAMS = {\n className: 'params',\n begin: '\\\\([^\\\\(]',\n returnBegin: true,\n /* We need another contained nameless mode to not have every nested\n pair of parens to be called \"params\" */\n contains: [\n {\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n contains: [ 'self' ].concat(EXPRESSIONS)\n }\n ]\n };\n\n return {\n name: 'MoonScript',\n aliases: [ 'moon' ],\n keywords: KEYWORDS,\n illegal: /\\/\\*/,\n contains: EXPRESSIONS.concat([\n hljs.COMMENT('--', '$'),\n {\n className: 'function', // function: -> =>\n begin: '^\\\\s*' + JS_IDENT_RE + '\\\\s*=\\\\s*' + POSSIBLE_PARAMS_RE,\n end: '[-=]>',\n returnBegin: true,\n contains: [\n TITLE,\n PARAMS\n ]\n },\n {\n begin: /[\\(,:=]\\s*/, // anonymous function start\n relevance: 0,\n contains: [\n {\n className: 'function',\n begin: POSSIBLE_PARAMS_RE,\n end: '[-=]>',\n returnBegin: true,\n contains: [ PARAMS ]\n }\n ]\n },\n {\n className: 'class',\n beginKeywords: 'class',\n end: '$',\n illegal: /[:=\"\\[\\]]/,\n contains: [\n {\n beginKeywords: 'extends',\n endsWithParent: true,\n illegal: /[:=\"\\[\\]]/,\n contains: [ TITLE ]\n },\n TITLE\n ]\n },\n {\n className: 'name', // table\n begin: JS_IDENT_RE + ':',\n end: ':',\n returnBegin: true,\n returnEnd: true,\n relevance: 0\n }\n ])\n };\n}\n\nmodule.exports = moonscript;\n"],"sourceRoot":""}