(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[50],{

/***/ "../../packages/monaco-editor/esm/vs/basic-languages/rust/rust.js":
/*!*************************************************************************************!*\
  !*** /mnt/vss/_work/1/s/packages/monaco-editor/esm/vs/basic-languages/rust/rust.js ***!
  \*************************************************************************************/
/*! exports provided: conf, language */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"conf\", function() { return conf; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"language\", function() { return language; });\n/*---------------------------------------------------------------------------------------------\r\n *  Copyright (c) Microsoft Corporation. All rights reserved.\r\n *  Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nvar conf = {\r\n    comments: {\r\n        lineComment: '//',\r\n        blockComment: ['/*', '*/'],\r\n    },\r\n    brackets: [\r\n        ['{', '}'],\r\n        ['[', ']'],\r\n        ['(', ')']\r\n    ],\r\n    autoClosingPairs: [\r\n        { open: '[', close: ']' },\r\n        { open: '{', close: '}' },\r\n        { open: '(', close: ')' },\r\n        { open: '\\'', close: '\\'', notIn: ['string', 'comment'] },\r\n        { open: '\"', close: '\"', notIn: ['string'] },\r\n    ],\r\n    surroundingPairs: [\r\n        { open: '{', close: '}' },\r\n        { open: '[', close: ']' },\r\n        { open: '(', close: ')' },\r\n        { open: '\"', close: '\"' },\r\n        { open: '\\'', close: '\\'' },\r\n    ],\r\n    folding: {\r\n        markers: {\r\n            start: new RegExp(\"^\\\\s*#pragma\\\\s+region\\\\b\"),\r\n            end: new RegExp(\"^\\\\s*#pragma\\\\s+endregion\\\\b\")\r\n        }\r\n    }\r\n};\r\nvar language = {\r\n    tokenPostfix: '.rust',\r\n    defaultToken: 'invalid',\r\n    keywords: [\r\n        'as', 'box', 'break', 'const', 'continue', 'crate', 'else', 'enum',\r\n        'extern', 'false', 'fn', 'for', 'if', 'impl', 'in', 'let', 'loop',\r\n        'match', 'mod', 'move', 'mut', 'pub', 'ref', 'return', 'self',\r\n        'static', 'struct', 'super', 'trait', 'true', 'type', 'unsafe', 'use',\r\n        'where', 'while', 'catch', 'default', 'union', 'static', 'abstract',\r\n        'alignof', 'become', 'do', 'final', 'macro', 'offsetof', 'override',\r\n        'priv', 'proc', 'pure', 'sizeof', 'typeof', 'unsized', 'virtual',\r\n        'yield',\r\n    ],\r\n    typeKeywords: [\r\n        'Self', 'm32', 'm64', 'm128', 'f80', 'f16', 'f128', 'int', 'uint',\r\n        'float', 'char', 'bool', 'u8', 'u16', 'u32', 'u64', 'f32', 'f64', 'i8',\r\n        'i16', 'i32', 'i64', 'str', 'Option', 'Either', 'c_float', 'c_double',\r\n        'c_void', 'FILE', 'fpos_t', 'DIR', 'dirent', 'c_char', 'c_schar',\r\n        'c_uchar', 'c_short', 'c_ushort', 'c_int', 'c_uint', 'c_long',\r\n        'c_ulong', 'size_t', 'ptrdiff_t', 'clock_t', 'time_t', 'c_longlong',\r\n        'c_ulonglong', 'intptr_t', 'uintptr_t', 'off_t', 'dev_t', 'ino_t',\r\n        'pid_t', 'mode_t', 'ssize_t',\r\n    ],\r\n    constants: [\r\n        'true', 'false', 'Some', 'None', 'Left', 'Right', 'Ok', 'Err',\r\n    ],\r\n    supportConstants: [\r\n        'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'EOF', 'SEEK_SET',\r\n        'SEEK_CUR', 'SEEK_END', '_IOFBF', '_IONBF', '_IOLBF', 'BUFSIZ',\r\n        'FOPEN_MAX', 'FILENAME_MAX', 'L_tmpnam', 'TMP_MAX', 'O_RDONLY',\r\n        'O_WRONLY', 'O_RDWR', 'O_APPEND', 'O_CREAT', 'O_EXCL', 'O_TRUNC',\r\n        'S_IFIFO', 'S_IFCHR', 'S_IFBLK', 'S_IFDIR', 'S_IFREG', 'S_IFMT',\r\n        'S_IEXEC', 'S_IWRITE', 'S_IREAD', 'S_IRWXU', 'S_IXUSR', 'S_IWUSR',\r\n        'S_IRUSR', 'F_OK', 'R_OK', 'W_OK', 'X_OK', 'STDIN_FILENO',\r\n        'STDOUT_FILENO', 'STDERR_FILENO',\r\n    ],\r\n    supportMacros: [\r\n        'format!', 'print!', 'println!', 'panic!', 'format_args!', 'unreachable!',\r\n        'write!', 'writeln!'\r\n    ],\r\n    operators: [\r\n        '!', '!=', '%', '%=', '&', '&=', '&&', '*', '*=', '+', '+=', '-', '-=',\r\n        '->', '.', '..', '...', '/', '/=', ':', ';', '<<', '<<=', '<', '<=', '=',\r\n        '==', '=>', '>', '>=', '>>', '>>=', '@', '^', '^=', '|', '|=', '||', '_',\r\n        '?', '#'\r\n    ],\r\n    escapes: /\\\\([nrt0\\\"''\\\\]|x\\h{2}|u\\{\\h{1,6}\\})/,\r\n    delimiters: /[,]/,\r\n    symbols: /[\\#\\!\\%\\&\\*\\+\\-\\.\\/\\:\\;\\<\\=\\>\\@\\^\\|_\\?]+/,\r\n    intSuffixes: /[iu](8|16|32|64|128|size)/,\r\n    floatSuffixes: /f(32|64)/,\r\n    tokenizer: {\r\n        root: [\r\n            [/[a-zA-Z][a-zA-Z0-9_]*!?|_[a-zA-Z0-9_]+/,\r\n                {\r\n                    cases: {\r\n                        '@typeKeywords': 'keyword.type',\r\n                        '@keywords': 'keyword',\r\n                        '@supportConstants': 'keyword',\r\n                        '@supportMacros': 'keyword',\r\n                        '@constants': 'keyword',\r\n                        '@default': 'identifier',\r\n                    }\r\n                }\r\n            ],\r\n            // Designator\r\n            [/\\$/, 'identifier'],\r\n            // Lifetime annotations\r\n            [/'[a-zA-Z_][a-zA-Z0-9_]*(?=[^\\'])/, 'identifier'],\r\n            // Byte literal\r\n            [/'\\S'/, 'string.byteliteral'],\r\n            // Strings\r\n            [/\"/, { token: 'string.quote', bracket: '@open', next: '@string' }],\r\n            { include: '@numbers' },\r\n            // Whitespace + comments\r\n            { include: '@whitespace' },\r\n            [/@delimiters/, {\r\n                    cases: {\r\n                        '@keywords': 'keyword',\r\n                        '@default': 'delimiter'\r\n                    }\r\n                }],\r\n            [/[{}()\\[\\]<>]/, '@brackets'],\r\n            [/@symbols/, { cases: { '@operators': 'operator', '@default': '' } }],\r\n        ],\r\n        whitespace: [\r\n            [/[ \\t\\r\\n]+/, 'white'],\r\n            [/\\/\\*/, 'comment', '@comment'],\r\n            [/\\/\\/.*$/, 'comment'],\r\n        ],\r\n        comment: [\r\n            [/[^\\/*]+/, 'comment'],\r\n            [/\\/\\*/, 'comment', '@push'],\r\n            [\"\\\\*/\", 'comment', '@pop'],\r\n            [/[\\/*]/, 'comment']\r\n        ],\r\n        string: [\r\n            [/[^\\\\\"]+/, 'string'],\r\n            [/@escapes/, 'string.escape'],\r\n            [/\\\\./, 'string.escape.invalid'],\r\n            [/\"/, { token: 'string.quote', bracket: '@close', next: '@pop' }]\r\n        ],\r\n        numbers: [\r\n            //Octal\r\n            [/(0o[0-7_]+)(@intSuffixes)?/, { token: 'number' }],\r\n            //Binary\r\n            [/(0b[0-1_]+)(@intSuffixes)?/, { token: 'number' }],\r\n            //Exponent\r\n            [/[\\d][\\d_]*(\\.[\\d][\\d_]*)?[eE][+-][\\d_]+(@floatSuffixes)?/, { token: 'number' }],\r\n            //Float\r\n            [/\\b(\\d\\.?[\\d_]*)(@floatSuffixes)?\\b/, { token: 'number' }],\r\n            //Hexadecimal\r\n            [/(0x[\\da-fA-F]+)_?(@intSuffixes)?/, { token: 'number' }],\r\n            //Integer\r\n            [/[\\d][\\d_]*(@intSuffixes?)?/, { token: 'number' }],\r\n        ]\r\n    }\r\n};\r\n\n\n//# sourceURL=webpack:////mnt/vss/_work/1/s/packages/monaco-editor/esm/vs/basic-languages/rust/rust.js?");

/***/ })

}]);