amis-rpc-design/node_modules/monaco-editor/dev/vs/basic-languages/ecl/ecl.js

483 lines
9.8 KiB
JavaScript
Raw Normal View History

2023-10-07 19:42:30 +08:00
"use strict";
/*!-----------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Version: 0.43.0(94c055bcbdd49f04a0fa15515e848542a79fb948)
* Released under the MIT license
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
*-----------------------------------------------------------------------------*/
define("vs/basic-languages/ecl/ecl", ["require"],(require)=>{
var moduleExports = (() => {
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
// src/basic-languages/ecl/ecl.ts
var ecl_exports = {};
__export(ecl_exports, {
conf: () => conf,
language: () => language
});
var conf = {
comments: {
lineComment: "//",
blockComment: ["/*", "*/"]
},
brackets: [
["{", "}"],
["[", "]"],
["(", ")"]
],
autoClosingPairs: [
{ open: "{", close: "}" },
{ open: "[", close: "]" },
{ open: "(", close: ")" },
{ open: "'", close: "'", notIn: ["string", "comment"] },
{ open: '"', close: '"', notIn: ["string", "comment"] }
],
surroundingPairs: [
{ open: "{", close: "}" },
{ open: "[", close: "]" },
{ open: "(", close: ")" },
{ open: "<", close: ">" },
{ open: "'", close: "'" },
{ open: '"', close: '"' }
]
};
var language = {
defaultToken: "",
tokenPostfix: ".ecl",
ignoreCase: true,
brackets: [
{ open: "{", close: "}", token: "delimiter.curly" },
{ open: "[", close: "]", token: "delimiter.square" },
{ open: "(", close: ")", token: "delimiter.parenthesis" },
{ open: "<", close: ">", token: "delimiter.angle" }
],
pounds: [
"append",
"break",
"declare",
"demangle",
"end",
"for",
"getdatatype",
"if",
"inmodule",
"loop",
"mangle",
"onwarning",
"option",
"set",
"stored",
"uniquename"
].join("|"),
keywords: [
"__compressed__",
"after",
"all",
"and",
"any",
"as",
"atmost",
"before",
"beginc",
"best",
"between",
"case",
"cluster",
"compressed",
"compression",
"const",
"counter",
"csv",
"default",
"descend",
"embed",
"encoding",
"encrypt",
"end",
"endc",
"endembed",
"endmacro",
"enum",
"escape",
"except",
"exclusive",
"expire",
"export",
"extend",
"fail",
"few",
"fileposition",
"first",
"flat",
"forward",
"from",
"full",
"function",
"functionmacro",
"group",
"grouped",
"heading",
"hole",
"ifblock",
"import",
"in",
"inner",
"interface",
"internal",
"joined",
"keep",
"keyed",
"last",
"left",
"limit",
"linkcounted",
"literal",
"little_endian",
"load",
"local",
"locale",
"lookup",
"lzw",
"macro",
"many",
"maxcount",
"maxlength",
"min skew",
"module",
"mofn",
"multiple",
"named",
"namespace",
"nocase",
"noroot",
"noscan",
"nosort",
"not",
"noxpath",
"of",
"onfail",
"only",
"opt",
"or",
"outer",
"overwrite",
"packed",
"partition",
"penalty",
"physicallength",
"pipe",
"prefetch",
"quote",
"record",
"repeat",
"retry",
"return",
"right",
"right1",
"right2",
"rows",
"rowset",
"scan",
"scope",
"self",
"separator",
"service",
"shared",
"skew",
"skip",
"smart",
"soapaction",
"sql",
"stable",
"store",
"terminator",
"thor",
"threshold",
"timelimit",
"timeout",
"token",
"transform",
"trim",
"type",
"unicodeorder",
"unordered",
"unsorted",
"unstable",
"update",
"use",
"validate",
"virtual",
"whole",
"width",
"wild",
"within",
"wnotrim",
"xml",
"xpath"
],
functions: [
"abs",
"acos",
"aggregate",
"allnodes",
"apply",
"ascii",
"asin",
"assert",
"asstring",
"atan",
"atan2",
"ave",
"build",
"buildindex",
"case",
"catch",
"choose",
"choosen",
"choosesets",
"clustersize",
"combine",
"correlation",
"cos",
"cosh",
"count",
"covariance",
"cron",
"dataset",
"dedup",
"define",
"denormalize",
"dictionary",
"distribute",
"distributed",
"distribution",
"ebcdic",
"enth",
"error",
"evaluate",
"event",
"eventextra",
"eventname",
"exists",
"exp",
"fail",
"failcode",
"failmessage",
"fetch",
"fromunicode",
"fromxml",
"getenv",
"getisvalid",
"global",
"graph",
"group",
"hash",
"hash32",
"hash64",
"hashcrc",
"hashmd5",
"having",
"httpcall",
"httpheader",
"if",
"iff",
"index",
"intformat",
"isvalid",
"iterate",
"join",
"keydiff",
"keypatch",
"keyunicode",
"length",
"library",
"limit",
"ln",
"loadxml",
"local",
"log",
"loop",
"map",
"matched",
"matchlength",
"matchposition",
"matchtext",
"matchunicode",
"max",
"merge",
"mergejoin",
"min",
"nofold",
"nolocal",
"nonempty",
"normalize",
"nothor",
"notify",
"output",
"parallel",
"parse",
"pipe",
"power",
"preload",
"process",
"project",
"pull",
"random",
"range",
"rank",
"ranked",
"realformat",
"recordof",
"regexfind",
"regexreplace",
"regroup",
"rejected",
"rollup",
"round",
"roundup",
"row",
"rowdiff",
"sample",
"sequential",
"set",
"sin",
"sinh",
"sizeof",
"soapcall",
"sort",
"sorted",
"sqrt",
"stepped",
"stored",
"sum",
"table",
"tan",
"tanh",
"thisnode",
"topn",
"tounicode",
"toxml",
"transfer",
"transform",
"trim",
"truncate",
"typeof",
"ungroup",
"unicodeorder",
"variance",
"wait",
"which",
"workunit",
"xmldecode",
"xmlencode",
"xmltext",
"xmlunicode"
],
typesint: ["integer", "unsigned"].join("|"),
typesnum: ["data", "qstring", "string", "unicode", "utf8", "varstring", "varunicode"],
typesone: [
"ascii",
"big_endian",
"boolean",
"data",
"decimal",
"ebcdic",
"grouped",
"integer",
"linkcounted",
"pattern",
"qstring",
"real",
"record",
"rule",
"set of",
"streamed",
"string",
"token",
"udecimal",
"unicode",
"unsigned",
"utf8",
"varstring",
"varunicode"
].join("|"),
operators: ["+", "-", "/", ":=", "<", "<>", "=", ">", "\\", "and", "in", "not", "or"],
symbols: /[=><!~?:&|+\-*\/\^%]+/,
escapes: /\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,
tokenizer: {
root: [
[/@typesint[4|8]/, "type"],
[/#(@pounds)/, "type"],
[/@typesone/, "type"],
[
/[a-zA-Z_$][\w-$]*/,
{
cases: {
"@functions": "keyword.function",
"@keywords": "keyword",
"@operators": "operator"
}
}
],
{ include: "@whitespace" },
[/[{}()\[\]]/, "@brackets"],
[/[<>](?!@symbols)/, "@brackets"],
[
/@symbols/,
{
cases: {
"@operators": "delimiter",
"@default": ""
}
}
],
[/[0-9_]*\.[0-9_]+([eE][\-+]?\d+)?/, "number.float"],
[/0[xX][0-9a-fA-F_]+/, "number.hex"],
[/0[bB][01]+/, "number.hex"],
[/[0-9_]+/, "number"],
[/[;,.]/, "delimiter"],
[/"([^"\\]|\\.)*$/, "string.invalid"],
[/"/, "string", "@string"],
[/'[^\\']'/, "string"],
[/(')(@escapes)(')/, ["string", "string.escape", "string"]],
[/'/, "string.invalid"]
],
whitespace: [
[/[ \t\v\f\r\n]+/, ""],
[/\/\*/, "comment", "@comment"],
[/\/\/.*$/, "comment"]
],
comment: [
[/[^\/*]+/, "comment"],
[/\*\//, "comment", "@pop"],
[/[\/*]/, "comment"]
],
string: [
[/[^\\']+/, "string"],
[/@escapes/, "string.escape"],
[/\\./, "string.escape.invalid"],
[/'/, "string", "@pop"]
]
}
};
return __toCommonJS(ecl_exports);
})();
return moduleExports;
});