blob: 6b68572656d47b1f0b0f6ec2f6c910bbcf6ecf62 [file] [log] [blame]
{"version":3,"sources":["webpack://lib/./node_modules/react-syntax-highlighter/node_modules/highlight.js/lib/languages/groovy.js"],"names":[],"mappings":";;;;;;;;;;AAAA;AACA,WAAW,OAAO;AAClB,aAAa;AACb;;AAEA;AACA,WAAW,iBAAiB;AAC5B,aAAa;AACb;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,WAAW,iBAAiB;AAC5B,aAAa;AACb;AACA;AACA;AACA;;AAEA;AACA,WAAW,sBAAsB;AACjC,aAAa;AACb;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,oCAAoC;AACpC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE;AACpE;AACA;AACA,qBAAqB,oCAAoC;AACzD;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA","file":"react-syntax-highlighter_languages_highlight_groovy.render-page.js","sourcesContent":["/**\n * @param {string} value\n * @returns {RegExp}\n * */\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction source(re) {\n if (!re) return null;\n if (typeof re === \"string\") return re;\n\n return re.source;\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction lookahead(re) {\n return concat('(?=', re, ')');\n}\n\n/**\n * @param {...(RegExp | string) } args\n * @returns {string}\n */\nfunction concat(...args) {\n const joined = args.map((x) => source(x)).join(\"\");\n return joined;\n}\n\n/*\n Language: Groovy\n Author: Guillaume Laforge <glaforge@gmail.com>\n Description: Groovy programming language implementation inspired from Vsevolod's Java mode\n Website: https://groovy-lang.org\n */\n\nfunction variants(variants, obj = {}) {\n obj.variants = variants;\n return obj;\n}\n\nfunction groovy(hljs) {\n const IDENT_RE = '[A-Za-z0-9_$]+';\n const COMMENT = variants([\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.COMMENT(\n '/\\\\*\\\\*',\n '\\\\*/',\n {\n relevance : 0,\n contains : [\n {\n // eat up @'s in emails to prevent them to be recognized as doctags\n begin: /\\w+@/, relevance: 0\n }, {\n className : 'doctag',\n begin : '@[A-Za-z]+'\n }\n ]\n }\n )\n ]);\n const REGEXP = {\n className: 'regexp',\n begin: /~?\\/[^\\/\\n]+\\//,\n contains: [\n hljs.BACKSLASH_ESCAPE\n ]\n };\n const NUMBER = variants([\n hljs.BINARY_NUMBER_MODE,\n hljs.C_NUMBER_MODE,\n ]);\n const STRING = variants([\n {\n begin: /\"\"\"/,\n end: /\"\"\"/\n }, {\n begin: /'''/,\n end: /'''/\n }, {\n begin: \"\\\\$/\",\n end: \"/\\\\$\",\n relevance: 10\n },\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n ],\n { className: \"string\" }\n );\n\n return {\n name: 'Groovy',\n keywords: {\n built_in: 'this super',\n literal: 'true false null',\n keyword:\n 'byte short char int long boolean float double void ' +\n // groovy specific keywords\n 'def as in assert trait ' +\n // common keywords with Java\n 'abstract static volatile transient public private protected synchronized final ' +\n 'class interface enum if else for while switch case break default continue ' +\n 'throw throws try catch finally implements extends new import package return instanceof'\n },\n contains: [\n hljs.SHEBANG(),\n COMMENT,\n STRING,\n REGEXP,\n NUMBER,\n {\n className: 'class',\n beginKeywords: 'class interface trait enum', end: '{',\n illegal: ':',\n contains: [\n {beginKeywords: 'extends implements'},\n hljs.UNDERSCORE_TITLE_MODE\n ]\n },\n {\n className: 'meta', begin: '@[A-Za-z]+'\n },\n {\n // highlight map keys and named parameters as attrs\n className: 'attr', begin: IDENT_RE + '[ \\t]*:'\n },\n {\n // catch middle element of the ternary operator\n // to avoid highlight it as a label, named parameter, or map key\n begin: /\\?/,\n end: /:/,\n contains: [\n COMMENT,\n STRING,\n REGEXP,\n NUMBER,\n 'self'\n ]\n },\n {\n // highlight labeled statements\n className: 'symbol',\n begin: '^[ \\t]*' + lookahead(IDENT_RE + ':'),\n excludeBegin: true,\n end: IDENT_RE + ':',\n relevance: 0\n }\n ],\n illegal: /#|<\\//\n };\n}\n\nmodule.exports = groovy;\n"],"sourceRoot":""}