| exports.ids = ["react-syntax-highlighter_languages_highlight_csharp"]; |
| exports.modules = { |
| |
| /***/ "./node_modules/react-syntax-highlighter/node_modules/highlight.js/lib/languages/csharp.js": |
| /*!*************************************************************************************************!*\ |
| !*** ./node_modules/react-syntax-highlighter/node_modules/highlight.js/lib/languages/csharp.js ***! |
| \*************************************************************************************************/ |
| /*! no static exports found */ |
| /***/ (function(module, exports) { |
| |
| /* |
| Language: C# |
| Author: Jason Diamond <jason@diamond.name> |
| Contributor: Nicolas LLOBERA <nllobera@gmail.com>, Pieter Vantorre <pietervantorre@gmail.com> |
| Website: https://docs.microsoft.com/en-us/dotnet/csharp/ |
| Category: common |
| */ |
| |
| /** @type LanguageFn */ |
| function csharp(hljs) { |
| var KEYWORDS = { |
| keyword: |
| // Normal keywords. |
| 'abstract as base bool break byte case catch char checked const continue decimal ' + |
| 'default delegate do double enum event explicit extern finally fixed float ' + |
| 'for foreach goto if implicit in init int interface internal is lock long ' + |
| 'object operator out override params private protected public readonly ref sbyte ' + |
| 'sealed short sizeof stackalloc static string struct switch this try typeof ' + |
| 'uint ulong unchecked unsafe ushort using virtual void volatile while ' + |
| // Contextual keywords. |
| 'add alias ascending async await by descending dynamic equals from get global group into join ' + |
| 'let nameof on orderby partial remove select set value var when where yield', |
| literal: |
| 'null false true' |
| }; |
| var TITLE_MODE = hljs.inherit(hljs.TITLE_MODE, {begin: '[a-zA-Z](\\.?\\w)*'}); |
| var NUMBERS = { |
| className: 'number', |
| variants: [ |
| { begin: '\\b(0b[01\']+)' }, |
| { begin: '(-?)\\b([\\d\']+(\\.[\\d\']*)?|\\.[\\d\']+)(u|U|l|L|ul|UL|f|F|b|B)' }, |
| { begin: '(-?)(\\b0[xX][a-fA-F0-9\']+|(\\b[\\d\']+(\\.[\\d\']*)?|\\.[\\d\']+)([eE][-+]?[\\d\']+)?)' } |
| ], |
| relevance: 0 |
| }; |
| var VERBATIM_STRING = { |
| className: 'string', |
| begin: '@"', end: '"', |
| contains: [{begin: '""'}] |
| }; |
| var VERBATIM_STRING_NO_LF = hljs.inherit(VERBATIM_STRING, {illegal: /\n/}); |
| var SUBST = { |
| className: 'subst', |
| begin: '{', end: '}', |
| keywords: KEYWORDS |
| }; |
| var SUBST_NO_LF = hljs.inherit(SUBST, {illegal: /\n/}); |
| var INTERPOLATED_STRING = { |
| className: 'string', |
| begin: /\$"/, end: '"', |
| illegal: /\n/, |
| contains: [{begin: '{{'}, {begin: '}}'}, hljs.BACKSLASH_ESCAPE, SUBST_NO_LF] |
| }; |
| var INTERPOLATED_VERBATIM_STRING = { |
| className: 'string', |
| begin: /\$@"/, end: '"', |
| contains: [{begin: '{{'}, {begin: '}}'}, {begin: '""'}, SUBST] |
| }; |
| var INTERPOLATED_VERBATIM_STRING_NO_LF = hljs.inherit(INTERPOLATED_VERBATIM_STRING, { |
| illegal: /\n/, |
| contains: [{begin: '{{'}, {begin: '}}'}, {begin: '""'}, SUBST_NO_LF] |
| }); |
| SUBST.contains = [ |
| INTERPOLATED_VERBATIM_STRING, |
| INTERPOLATED_STRING, |
| VERBATIM_STRING, |
| hljs.APOS_STRING_MODE, |
| hljs.QUOTE_STRING_MODE, |
| NUMBERS, |
| hljs.C_BLOCK_COMMENT_MODE |
| ]; |
| SUBST_NO_LF.contains = [ |
| INTERPOLATED_VERBATIM_STRING_NO_LF, |
| INTERPOLATED_STRING, |
| VERBATIM_STRING_NO_LF, |
| hljs.APOS_STRING_MODE, |
| hljs.QUOTE_STRING_MODE, |
| NUMBERS, |
| hljs.inherit(hljs.C_BLOCK_COMMENT_MODE, {illegal: /\n/}) |
| ]; |
| var STRING = { |
| variants: [ |
| INTERPOLATED_VERBATIM_STRING, |
| INTERPOLATED_STRING, |
| VERBATIM_STRING, |
| hljs.APOS_STRING_MODE, |
| hljs.QUOTE_STRING_MODE |
| ] |
| }; |
| |
| var GENERIC_MODIFIER = { |
| begin: "<", |
| end: ">", |
| contains: [ |
| { beginKeywords: "in out"}, |
| TITLE_MODE |
| ] |
| }; |
| var TYPE_IDENT_RE = hljs.IDENT_RE + '(<' + hljs.IDENT_RE + '(\\s*,\\s*' + hljs.IDENT_RE + ')*>)?(\\[\\])?'; |
| var AT_IDENTIFIER = { |
| // prevents expressions like `@class` from incorrect flagging |
| // `class` as a keyword |
| begin: "@" + hljs.IDENT_RE, |
| relevance: 0 |
| }; |
| |
| return { |
| name: 'C#', |
| aliases: ['cs', 'c#'], |
| keywords: KEYWORDS, |
| illegal: /::/, |
| contains: [ |
| hljs.COMMENT( |
| '///', |
| '$', |
| { |
| returnBegin: true, |
| contains: [ |
| { |
| className: 'doctag', |
| variants: [ |
| { |
| begin: '///', relevance: 0 |
| }, |
| { |
| begin: '<!--|-->' |
| }, |
| { |
| begin: '</?', end: '>' |
| } |
| ] |
| } |
| ] |
| } |
| ), |
| hljs.C_LINE_COMMENT_MODE, |
| hljs.C_BLOCK_COMMENT_MODE, |
| { |
| className: 'meta', |
| begin: '#', end: '$', |
| keywords: { |
| 'meta-keyword': 'if else elif endif define undef warning error line region endregion pragma checksum' |
| } |
| }, |
| STRING, |
| NUMBERS, |
| { |
| beginKeywords: 'class interface', end: /[{;=]/, |
| illegal: /[^\s:,]/, |
| contains: [ |
| { beginKeywords: "where class" }, |
| TITLE_MODE, |
| GENERIC_MODIFIER, |
| hljs.C_LINE_COMMENT_MODE, |
| hljs.C_BLOCK_COMMENT_MODE |
| ] |
| }, |
| { |
| beginKeywords: 'namespace', end: /[{;=]/, |
| illegal: /[^\s:]/, |
| contains: [ |
| TITLE_MODE, |
| hljs.C_LINE_COMMENT_MODE, |
| hljs.C_BLOCK_COMMENT_MODE |
| ] |
| }, |
| { |
| beginKeywords: 'record', end: /[{;=]/, |
| illegal: /[^\s:]/, |
| contains: [ |
| TITLE_MODE, |
| GENERIC_MODIFIER, |
| hljs.C_LINE_COMMENT_MODE, |
| hljs.C_BLOCK_COMMENT_MODE |
| ] |
| }, |
| { |
| // [Attributes("")] |
| className: 'meta', |
| begin: '^\\s*\\[', excludeBegin: true, end: '\\]', excludeEnd: true, |
| contains: [ |
| {className: 'meta-string', begin: /"/, end: /"/} |
| ] |
| }, |
| { |
| // Expression keywords prevent 'keyword Name(...)' from being |
| // recognized as a function definition |
| beginKeywords: 'new return throw await else', |
| relevance: 0 |
| }, |
| { |
| className: 'function', |
| begin: '(' + TYPE_IDENT_RE + '\\s+)+' + hljs.IDENT_RE + '\\s*(\\<.+\\>)?\\s*\\(', returnBegin: true, |
| end: /\s*[{;=]/, excludeEnd: true, |
| keywords: KEYWORDS, |
| contains: [ |
| { |
| begin: hljs.IDENT_RE + '\\s*(\\<.+\\>)?\\s*\\(', returnBegin: true, |
| contains: [ |
| hljs.TITLE_MODE, |
| GENERIC_MODIFIER |
| ], |
| relevance: 0 |
| }, |
| { |
| className: 'params', |
| begin: /\(/, end: /\)/, |
| excludeBegin: true, |
| excludeEnd: true, |
| keywords: KEYWORDS, |
| relevance: 0, |
| contains: [ |
| STRING, |
| NUMBERS, |
| hljs.C_BLOCK_COMMENT_MODE |
| ] |
| }, |
| hljs.C_LINE_COMMENT_MODE, |
| hljs.C_BLOCK_COMMENT_MODE |
| ] |
| }, |
| AT_IDENTIFIER |
| ] |
| }; |
| } |
| |
| module.exports = csharp; |
| |
| |
| /***/ }) |
| |
| };; |
| //# sourceMappingURL=react-syntax-highlighter_languages_highlight_csharp.render-page.js.map |