mirror of
https://github.com/danog/telegram-tt.git
synced 2024-11-29 20:29:12 +01:00
1 line
13 KiB
Plaintext
1 line
13 KiB
Plaintext
{"version":3,"file":"9338.cf9b08f5551ab6096a70.js","mappings":"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","sources":["webpack://telegram-t/./node_modules/highlight.js/lib/languages/ruby.js"],"sourcesContent":["/*\nLanguage: Ruby\nDescription: Ruby is a dynamic, open source programming language with a focus on simplicity and productivity.\nWebsite: https://www.ruby-lang.org/\nAuthor: Anton Kovalyov <anton@kovalyov.net>\nContributors: Peter Leonov <gojpeg@yandex.ru>, Vasily Polovnyov <vast@whiteants.net>, Loren Segal <lsegal@soen.ca>, Pascal Hurni <phi@ruby-reactive.org>, Cedric Sohrauer <sohrauer@googlemail.com>\nCategory: common\n*/\n\nfunction ruby(hljs) {\n const regex = hljs.regex;\n const RUBY_METHOD_RE = '([a-zA-Z_]\\\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\\\*\\\\*|[-/+%^&*~`|]|\\\\[\\\\]=?)';\n // TODO: move concepts like CAMEL_CASE into `modes.js`\n const CLASS_NAME_RE = regex.either(\n /\\b([A-Z]+[a-z0-9]+)+/,\n // ends in caps\n /\\b([A-Z]+[a-z0-9]+)+[A-Z]+/,\n )\n ;\n const CLASS_NAME_WITH_NAMESPACE_RE = regex.concat(CLASS_NAME_RE, /(::\\w+)*/);\n const RUBY_KEYWORDS = {\n \"variable.constant\": [\n \"__FILE__\",\n \"__LINE__\"\n ],\n \"variable.language\": [\n \"self\",\n \"super\",\n ],\n keyword: [\n \"alias\",\n \"and\",\n \"attr_accessor\",\n \"attr_reader\",\n \"attr_writer\",\n \"begin\",\n \"BEGIN\",\n \"break\",\n \"case\",\n \"class\",\n \"defined\",\n \"do\",\n \"else\",\n \"elsif\",\n \"end\",\n \"END\",\n \"ensure\",\n \"for\",\n \"if\",\n \"in\",\n \"include\",\n \"module\",\n \"next\",\n \"not\",\n \"or\",\n \"redo\",\n \"require\",\n \"rescue\",\n \"retry\",\n \"return\",\n \"then\",\n \"undef\",\n \"unless\",\n \"until\",\n \"when\",\n \"while\",\n \"yield\",\n ],\n built_in: [\n \"proc\",\n \"lambda\"\n ],\n literal: [\n \"true\",\n \"false\",\n \"nil\"\n ]\n };\n const YARDOCTAG = {\n className: 'doctag',\n begin: '@[A-Za-z]+'\n };\n const IRB_OBJECT = {\n begin: '#<',\n end: '>'\n };\n const COMMENT_MODES = [\n hljs.COMMENT(\n '#',\n '$',\n { contains: [ YARDOCTAG ] }\n ),\n hljs.COMMENT(\n '^=begin',\n '^=end',\n {\n contains: [ YARDOCTAG ],\n relevance: 10\n }\n ),\n hljs.COMMENT('^__END__', hljs.MATCH_NOTHING_RE)\n ];\n const SUBST = {\n className: 'subst',\n begin: /#\\{/,\n end: /\\}/,\n keywords: RUBY_KEYWORDS\n };\n const STRING = {\n className: 'string',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n variants: [\n {\n begin: /'/,\n end: /'/\n },\n {\n begin: /\"/,\n end: /\"/\n },\n {\n begin: /`/,\n end: /`/\n },\n {\n begin: /%[qQwWx]?\\(/,\n end: /\\)/\n },\n {\n begin: /%[qQwWx]?\\[/,\n end: /\\]/\n },\n {\n begin: /%[qQwWx]?\\{/,\n end: /\\}/\n },\n {\n begin: /%[qQwWx]?</,\n end: />/\n },\n {\n begin: /%[qQwWx]?\\//,\n end: /\\//\n },\n {\n begin: /%[qQwWx]?%/,\n end: /%/\n },\n {\n begin: /%[qQwWx]?-/,\n end: /-/\n },\n {\n begin: /%[qQwWx]?\\|/,\n end: /\\|/\n },\n // in the following expressions, \\B in the beginning suppresses recognition of ?-sequences\n // where ? is the last character of a preceding identifier, as in: `func?4`\n { begin: /\\B\\?(\\\\\\d{1,3})/ },\n { begin: /\\B\\?(\\\\x[A-Fa-f0-9]{1,2})/ },\n { begin: /\\B\\?(\\\\u\\{?[A-Fa-f0-9]{1,6}\\}?)/ },\n { begin: /\\B\\?(\\\\M-\\\\C-|\\\\M-\\\\c|\\\\c\\\\M-|\\\\M-|\\\\C-\\\\M-)[\\x20-\\x7e]/ },\n { begin: /\\B\\?\\\\(c|C-)[\\x20-\\x7e]/ },\n { begin: /\\B\\?\\\\?\\S/ },\n // heredocs\n {\n // this guard makes sure that we have an entire heredoc and not a false\n // positive (auto-detect, etc.)\n begin: regex.concat(\n /<<[-~]?'?/,\n regex.lookahead(/(\\w+)(?=\\W)[^\\n]*\\n(?:[^\\n]*\\n)*?\\s*\\1\\b/)\n ),\n contains: [\n hljs.END_SAME_AS_BEGIN({\n begin: /(\\w+)/,\n end: /(\\w+)/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ]\n })\n ]\n }\n ]\n };\n\n // Ruby syntax is underdocumented, but this grammar seems to be accurate\n // as of version 2.7.2 (confirmed with (irb and `Ripper.sexp(...)`)\n // https://docs.ruby-lang.org/en/2.7.0/doc/syntax/literals_rdoc.html#label-Numbers\n const decimal = '[1-9](_?[0-9])*|0';\n const digits = '[0-9](_?[0-9])*';\n const NUMBER = {\n className: 'number',\n relevance: 0,\n variants: [\n // decimal integer/float, optionally exponential or rational, optionally imaginary\n { begin: `\\\\b(${decimal})(\\\\.(${digits}))?([eE][+-]?(${digits})|r)?i?\\\\b` },\n\n // explicit decimal/binary/octal/hexadecimal integer,\n // optionally rational and/or imaginary\n { begin: \"\\\\b0[dD][0-9](_?[0-9])*r?i?\\\\b\" },\n { begin: \"\\\\b0[bB][0-1](_?[0-1])*r?i?\\\\b\" },\n { begin: \"\\\\b0[oO][0-7](_?[0-7])*r?i?\\\\b\" },\n { begin: \"\\\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\\\b\" },\n\n // 0-prefixed implicit octal integer, optionally rational and/or imaginary\n { begin: \"\\\\b0(_?[0-7])+r?i?\\\\b\" }\n ]\n };\n\n const PARAMS = {\n variants: [\n {\n match: /\\(\\)/,\n },\n {\n className: 'params',\n begin: /\\(/,\n end: /(?=\\))/,\n excludeBegin: true,\n endsParent: true,\n keywords: RUBY_KEYWORDS,\n }\n ]\n };\n\n const CLASS_DEFINITION = {\n variants: [\n {\n match: [\n /class\\s+/,\n CLASS_NAME_WITH_NAMESPACE_RE,\n /\\s+<\\s+/,\n CLASS_NAME_WITH_NAMESPACE_RE\n ]\n },\n {\n match: [\n /class\\s+/,\n CLASS_NAME_WITH_NAMESPACE_RE\n ]\n }\n ],\n scope: {\n 2: \"title.class\",\n 4: \"title.class.inherited\"\n },\n keywords: RUBY_KEYWORDS\n };\n\n const UPPER_CASE_CONSTANT = {\n relevance: 0,\n match: /\\b[A-Z][A-Z_0-9]+\\b/,\n className: \"variable.constant\"\n };\n\n const METHOD_DEFINITION = {\n match: [\n /def/, /\\s+/,\n RUBY_METHOD_RE\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n PARAMS\n ]\n };\n\n const OBJECT_CREATION = {\n relevance: 0,\n match: [\n CLASS_NAME_WITH_NAMESPACE_RE,\n /\\.new[ (]/\n ],\n scope: {\n 1: \"title.class\"\n }\n };\n\n const RUBY_DEFAULT_CONTAINS = [\n STRING,\n CLASS_DEFINITION,\n OBJECT_CREATION,\n UPPER_CASE_CONSTANT,\n METHOD_DEFINITION,\n {\n // swallow namespace qualifiers before symbols\n begin: hljs.IDENT_RE + '::' },\n {\n className: 'symbol',\n begin: hljs.UNDERSCORE_IDENT_RE + '(!|\\\\?)?:',\n relevance: 0\n },\n {\n className: 'symbol',\n begin: ':(?!\\\\s)',\n contains: [\n STRING,\n { begin: RUBY_METHOD_RE }\n ],\n relevance: 0\n },\n NUMBER,\n {\n // negative-look forward attempts to prevent false matches like:\n // @ident@ or $ident$ that might indicate this is not ruby at all\n className: \"variable\",\n begin: '(\\\\$\\\\W)|((\\\\$|@@?)(\\\\w+))(?=[^@$?])' + `(?![A-Za-z])(?![@$?'])`\n },\n {\n className: 'params',\n begin: /\\|/,\n end: /\\|/,\n excludeBegin: true,\n excludeEnd: true,\n relevance: 0, // this could be a lot of things (in other languages) other than params\n keywords: RUBY_KEYWORDS\n },\n { // regexp container\n begin: '(' + hljs.RE_STARTERS_RE + '|unless)\\\\s*',\n keywords: 'unless',\n contains: [\n {\n className: 'regexp',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n illegal: /\\n/,\n variants: [\n {\n begin: '/',\n end: '/[a-z]*'\n },\n {\n begin: /%r\\{/,\n end: /\\}[a-z]*/\n },\n {\n begin: '%r\\\\(',\n end: '\\\\)[a-z]*'\n },\n {\n begin: '%r!',\n end: '![a-z]*'\n },\n {\n begin: '%r\\\\[',\n end: '\\\\][a-z]*'\n }\n ]\n }\n ].concat(IRB_OBJECT, COMMENT_MODES),\n relevance: 0\n }\n ].concat(IRB_OBJECT, COMMENT_MODES);\n\n SUBST.contains = RUBY_DEFAULT_CONTAINS;\n PARAMS.contains = RUBY_DEFAULT_CONTAINS;\n\n // >>\n // ?>\n const SIMPLE_PROMPT = \"[>?]>\";\n // irb(main):001:0>\n const DEFAULT_PROMPT = \"[\\\\w#]+\\\\(\\\\w+\\\\):\\\\d+:\\\\d+[>*]\";\n const RVM_PROMPT = \"(\\\\w+-)?\\\\d+\\\\.\\\\d+\\\\.\\\\d+(p\\\\d+)?[^\\\\d][^>]+>\";\n\n const IRB_DEFAULT = [\n {\n begin: /^\\s*=>/,\n starts: {\n end: '$',\n contains: RUBY_DEFAULT_CONTAINS\n }\n },\n {\n className: 'meta.prompt',\n begin: '^(' + SIMPLE_PROMPT + \"|\" + DEFAULT_PROMPT + '|' + RVM_PROMPT + ')(?=[ ])',\n starts: {\n end: '$',\n keywords: RUBY_KEYWORDS,\n contains: RUBY_DEFAULT_CONTAINS\n }\n }\n ];\n\n COMMENT_MODES.unshift(IRB_OBJECT);\n\n return {\n name: 'Ruby',\n aliases: [\n 'rb',\n 'gemspec',\n 'podspec',\n 'thor',\n 'irb'\n ],\n keywords: RUBY_KEYWORDS,\n illegal: /\\/\\*/,\n contains: [ hljs.SHEBANG({ binary: \"ruby\" }) ]\n .concat(IRB_DEFAULT)\n .concat(COMMENT_MODES)\n .concat(RUBY_DEFAULT_CONTAINS)\n };\n}\n\nmodule.exports = ruby;\n"],"names":["module","exports","hljs","regex","RUBY_METHOD_RE","CLASS_NAME_RE","either","CLASS_NAME_WITH_NAMESPACE_RE","concat","RUBY_KEYWORDS","keyword","built_in","literal","YARDOCTAG","className","begin","IRB_OBJECT","end","COMMENT_MODES","COMMENT","contains","relevance","MATCH_NOTHING_RE","SUBST","keywords","STRING","BACKSLASH_ESCAPE","variants","lookahead","END_SAME_AS_BEGIN","digits","NUMBER","PARAMS","match","excludeBegin","endsParent","RUBY_DEFAULT_CONTAINS","scope","IDENT_RE","UNDERSCORE_IDENT_RE","excludeEnd","RE_STARTERS_RE","illegal","IRB_DEFAULT","starts","unshift","name","aliases","SHEBANG","binary"],"sourceRoot":""} |