123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298 |
- /*!-----------------------------------------------------------------------------
- * Copyright (c) Microsoft Corporation. All rights reserved.
- * Version: 0.31.1(337587859b1c171314b40503171188b6cea6a32a)
- * Released under the MIT license
- * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
- *-----------------------------------------------------------------------------*/
- define("vs/basic-languages/qsharp/qsharp",[],()=>{
- var moduleExports = (() => {
- var __defProp = Object.defineProperty;
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
- var __export = (target, all) => {
- __markAsModule(target);
- for (var name in all)
- __defProp(target, name, { get: all[name], enumerable: true });
- };
- // src/basic-languages/qsharp/qsharp.ts
- var qsharp_exports = {};
- __export(qsharp_exports, {
- conf: () => conf,
- language: () => language
- });
- var conf = {
- comments: {
- lineComment: "//"
- },
- brackets: [
- ["{", "}"],
- ["[", "]"],
- ["(", ")"]
- ],
- autoClosingPairs: [
- { open: "{", close: "}" },
- { open: "[", close: "]" },
- { open: "(", close: ")" },
- { open: '"', close: '"', notIn: ["string", "comment"] }
- ],
- surroundingPairs: [
- { open: "{", close: "}" },
- { open: "[", close: "]" },
- { open: "(", close: ")" },
- { open: '"', close: '"' }
- ]
- };
- var language = {
- keywords: [
- "namespace",
- "open",
- "as",
- "operation",
- "function",
- "body",
- "adjoint",
- "newtype",
- "controlled",
- "if",
- "elif",
- "else",
- "repeat",
- "until",
- "fixup",
- "for",
- "in",
- "while",
- "return",
- "fail",
- "within",
- "apply",
- "Adjoint",
- "Controlled",
- "Adj",
- "Ctl",
- "is",
- "self",
- "auto",
- "distribute",
- "invert",
- "intrinsic",
- "let",
- "set",
- "w/",
- "new",
- "not",
- "and",
- "or",
- "use",
- "borrow",
- "using",
- "borrowing",
- "mutable"
- ],
- typeKeywords: [
- "Unit",
- "Int",
- "BigInt",
- "Double",
- "Bool",
- "String",
- "Qubit",
- "Result",
- "Pauli",
- "Range"
- ],
- invalidKeywords: [
- "abstract",
- "base",
- "bool",
- "break",
- "byte",
- "case",
- "catch",
- "char",
- "checked",
- "class",
- "const",
- "continue",
- "decimal",
- "default",
- "delegate",
- "do",
- "double",
- "enum",
- "event",
- "explicit",
- "extern",
- "finally",
- "fixed",
- "float",
- "foreach",
- "goto",
- "implicit",
- "int",
- "interface",
- "lock",
- "long",
- "null",
- "object",
- "operator",
- "out",
- "override",
- "params",
- "private",
- "protected",
- "public",
- "readonly",
- "ref",
- "sbyte",
- "sealed",
- "short",
- "sizeof",
- "stackalloc",
- "static",
- "string",
- "struct",
- "switch",
- "this",
- "throw",
- "try",
- "typeof",
- "unit",
- "ulong",
- "unchecked",
- "unsafe",
- "ushort",
- "virtual",
- "void",
- "volatile"
- ],
- constants: ["true", "false", "PauliI", "PauliX", "PauliY", "PauliZ", "One", "Zero"],
- builtin: [
- "X",
- "Y",
- "Z",
- "H",
- "HY",
- "S",
- "T",
- "SWAP",
- "CNOT",
- "CCNOT",
- "MultiX",
- "R",
- "RFrac",
- "Rx",
- "Ry",
- "Rz",
- "R1",
- "R1Frac",
- "Exp",
- "ExpFrac",
- "Measure",
- "M",
- "MultiM",
- "Message",
- "Length",
- "Assert",
- "AssertProb",
- "AssertEqual"
- ],
- operators: [
- "and=",
- "<-",
- "->",
- "*",
- "*=",
- "@",
- "!",
- "^",
- "^=",
- ":",
- "::",
- "..",
- "==",
- "...",
- "=",
- "=>",
- ">",
- ">=",
- "<",
- "<=",
- "-",
- "-=",
- "!=",
- "or=",
- "%",
- "%=",
- "|",
- "+",
- "+=",
- "?",
- "/",
- "/=",
- "&&&",
- "&&&=",
- "^^^",
- "^^^=",
- ">>>",
- ">>>=",
- "<<<",
- "<<<=",
- "|||",
- "|||=",
- "~~~",
- "_",
- "w/",
- "w/="
- ],
- namespaceFollows: ["namespace", "open"],
- symbols: /[=><!~?:&|+\-*\/\^%@._]+/,
- escapes: /\\[\s\S]/,
- tokenizer: {
- root: [
- [
- /[a-zA-Z_$][\w$]*/,
- {
- cases: {
- "@namespaceFollows": {
- token: "keyword.$0",
- next: "@namespace"
- },
- "@typeKeywords": "type",
- "@keywords": "keyword",
- "@constants": "constant",
- "@builtin": "keyword",
- "@invalidKeywords": "invalid",
- "@default": "identifier"
- }
- }
- ],
- { include: "@whitespace" },
- [/[{}()\[\]]/, "@brackets"],
- [/@symbols/, { cases: { "@operators": "operator", "@default": "" } }],
- [/\d*\.\d+([eE][\-+]?\d+)?/, "number.float"],
- [/\d+/, "number"],
- [/[;,.]/, "delimiter"],
- [/"/, { token: "string.quote", bracket: "@open", next: "@string" }]
- ],
- string: [
- [/[^\\"]+/, "string"],
- [/@escapes/, "string.escape"],
- [/"/, { token: "string.quote", bracket: "@close", next: "@pop" }]
- ],
- namespace: [
- { include: "@whitespace" },
- [/[A-Za-z]\w*/, "namespace"],
- [/[\.=]/, "delimiter"],
- ["", "", "@pop"]
- ],
- whitespace: [
- [/[ \t\r\n]+/, "white"],
- [/(\/\/).*/, "comment"]
- ]
- }
- };
- return qsharp_exports;
- })();
- return moduleExports;
- });
|