dolphindb 2.0.965 → 2.0.967
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs.en.json +4 -4
- package/docs.zh.json +14 -14
- package/language.js +12 -5
- package/language.js.map +1 -1
- package/package.json +4 -4
- package/.eslintrc.json +0 -148
- package/.eslintrc.schema.json +0 -1509
- package/.vscode/extensions.json +0 -10
- package/.vscode/launch.template.json +0 -16
- package/.vscode/settings.json +0 -13
- package/.vscode/settings.template.json +0 -13
package/docs.en.json
CHANGED
|
@@ -34013,7 +34013,7 @@
|
|
|
34013
34013
|
"name name of the stream engine",
|
|
34014
34014
|
"user name of the user who created the stream engine",
|
|
34015
34015
|
"status status of the stream engine. \"OK\" means available; \"FATAL\" means unavailable ",
|
|
34016
|
-
"
|
|
34016
|
+
"lastErrMsg the latest error message ",
|
|
34017
34017
|
"windowTime the length of the data window",
|
|
34018
34018
|
"step the duration between 2 adjacent calculations",
|
|
34019
34019
|
"useSystemTime whether the stream engine is triggered as soon as data are injected into the system",
|
|
@@ -34155,7 +34155,7 @@
|
|
|
34155
34155
|
"+-------------------+-------------------------------------------------------------------------------------+",
|
|
34156
34156
|
"| status | status of the stream engine. “OK” means available; “FATAL” means unavailable |",
|
|
34157
34157
|
"+-------------------+-------------------------------------------------------------------------------------+",
|
|
34158
|
-
"|
|
|
34158
|
+
"| lastErrMsg | the latest error message |",
|
|
34159
34159
|
"+-------------------+-------------------------------------------------------------------------------------+",
|
|
34160
34160
|
"| windowTime | the length of the window |",
|
|
34161
34161
|
"+-------------------+-------------------------------------------------------------------------------------+",
|
|
@@ -34195,7 +34195,7 @@
|
|
|
34195
34195
|
"+-------------------+--------------------------------------------------------------------------------+",
|
|
34196
34196
|
"| status | status of the stream engine. “OK” means available; “FATAL” means unavailable |",
|
|
34197
34197
|
"+-------------------+--------------------------------------------------------------------------------+",
|
|
34198
|
-
"|
|
|
34198
|
+
"| lastErrMsg | the latest error message |",
|
|
34199
34199
|
"+-------------------+--------------------------------------------------------------------------------+",
|
|
34200
34200
|
"| useSystemTime | the value of parameter useSystemTime in function createAsofJoinEngine |",
|
|
34201
34201
|
"+-------------------+--------------------------------------------------------------------------------+",
|
|
@@ -34223,7 +34223,7 @@
|
|
|
34223
34223
|
"name name of the stream engine",
|
|
34224
34224
|
"user name of the user who created the stream engine",
|
|
34225
34225
|
"status status of the stream engine. “OK” means available; “FATAL” means unavailable",
|
|
34226
|
-
"
|
|
34226
|
+
"lastErrMsg the latest error message ",
|
|
34227
34227
|
"garbageSize whether the stream engine is triggered as soon as data are ingested into the system",
|
|
34228
34228
|
"leftTableNumRows the number of records that has entered the left table of the stream engine",
|
|
34229
34229
|
"rightTableNumRows the number of records that has entered the right table of the stream engine",
|
package/docs.zh.json
CHANGED
|
@@ -13080,7 +13080,7 @@
|
|
|
13080
13080
|
"",
|
|
13081
13081
|
".. _mc_aj:",
|
|
13082
13082
|
"",
|
|
13083
|
-
"`matchingColumn` 表示连接列的字符串标量/向量/字符串组成的 tuple,支持 Integral,
|
|
13083
|
+
"`matchingColumn` 表示连接列的字符串标量/向量/字符串组成的 tuple,支持 Integral, Temporal 或 Literal(UUID 除外)类型。",
|
|
13084
13084
|
"",
|
|
13085
13085
|
"*matchingColumn* 指定规则:",
|
|
13086
13086
|
"",
|
|
@@ -14442,7 +14442,7 @@
|
|
|
14442
14442
|
"",
|
|
14443
14443
|
".. _matchingColumnLSJ:",
|
|
14444
14444
|
"",
|
|
14445
|
-
"`matchingColumn` 表示连接列的字符串标量/向量或字符串向量组成的 tuple,支持 Integral,
|
|
14445
|
+
"`matchingColumn` 表示连接列的字符串标量/向量或字符串向量组成的 tuple,支持 Integral, Temporal 或 Literal(UUID 除外)类型。",
|
|
14446
14446
|
"",
|
|
14447
14447
|
"*matchingColumn* 指定规则:",
|
|
14448
14448
|
"",
|
|
@@ -14599,7 +14599,7 @@
|
|
|
14599
14599
|
"",
|
|
14600
14600
|
".. _matchingColumnLJ:",
|
|
14601
14601
|
"",
|
|
14602
|
-
"`matchingColumn` 表示连接列的字符串标量/向量或字符串向量组成的 tuple,支持 Integral,
|
|
14602
|
+
"`matchingColumn` 表示连接列的字符串标量/向量或字符串向量组成的 tuple,支持 Integral, Temporal 或 Literal(UUID 除外)类型。",
|
|
14603
14603
|
"",
|
|
14604
14604
|
"*matchingColumn* 指定规则:",
|
|
14605
14605
|
"",
|
|
@@ -16652,7 +16652,7 @@
|
|
|
16652
16652
|
"",
|
|
16653
16653
|
".. _matchingColumnWJ:",
|
|
16654
16654
|
"",
|
|
16655
|
-
"`matchingColumn` 表示连接列的字符串标量/向量/tuple,支持 Integral,
|
|
16655
|
+
"`matchingColumn` 表示连接列的字符串标量/向量/tuple,支持 Integral, Temporal 或 Literal(UUID 除外)类型。",
|
|
16656
16656
|
"",
|
|
16657
16657
|
"*matchingColumn* 指定规则:",
|
|
16658
16658
|
"",
|
|
@@ -36654,7 +36654,7 @@
|
|
|
36654
36654
|
"name 时间序列引擎的名称",
|
|
36655
36655
|
"user 创建时间序列引擎的用户名",
|
|
36656
36656
|
"status 时间序列引擎的状态,\"OK\"表示可用,\"FATAL\"表示不可用",
|
|
36657
|
-
"
|
|
36657
|
+
"lastErrMsg 最后一条错误信息 ",
|
|
36658
36658
|
"windowTime 窗口的长度",
|
|
36659
36659
|
"step 计算的时间间隔",
|
|
36660
36660
|
"useSystemTime 时间序列引擎中 useSystemTime 参数值",
|
|
@@ -36758,7 +36758,7 @@
|
|
|
36758
36758
|
"name 日级时间序列引擎的名称",
|
|
36759
36759
|
"user 创建日级时间序列引擎的用户名",
|
|
36760
36760
|
"status 日级时间序列引擎的状态,\"OK\" 表示可用,\"FATAL\" 表示不可用",
|
|
36761
|
-
"
|
|
36761
|
+
"lastErrMsg 最后一条错误信息 ",
|
|
36762
36762
|
"windowTime 数据窗口的长度",
|
|
36763
36763
|
"step 计算的时间间隔",
|
|
36764
36764
|
"useSystemTime 日级时间序列引擎中 useSystemTime 参数值",
|
|
@@ -36782,7 +36782,7 @@
|
|
|
36782
36782
|
"name asof join 引擎的名称",
|
|
36783
36783
|
"user 创建 asof join 引擎的用户名",
|
|
36784
36784
|
"status asof join 引擎的状态,\"OK\" 表示可用,\"FATAL\" 表示不可用",
|
|
36785
|
-
"
|
|
36785
|
+
"lastErrMsg 最后一条错误信息 ",
|
|
36786
36786
|
"useSystemTime asof join 引擎中 useSystemTime 参数值",
|
|
36787
36787
|
"delayedTime asof join 引擎中 delayedTime 参数值",
|
|
36788
36788
|
"garbageSize 触发内存清理的阈值",
|
|
@@ -36801,7 +36801,7 @@
|
|
|
36801
36801
|
"name equi join 引擎的名称",
|
|
36802
36802
|
"user 创建 equi join 引擎的用户名",
|
|
36803
36803
|
"status equi join 引擎的状态,\"OK\" 表示可用,\"FATAL\" 表示不可用",
|
|
36804
|
-
"
|
|
36804
|
+
"lastErrMsg 最后一条错误信息 ",
|
|
36805
36805
|
"garbageSize 触发内存清理的阈值",
|
|
36806
36806
|
"leftTableNumRows equi join 引擎左表中的记录行数",
|
|
36807
36807
|
"rightTableNumRows equi join 引擎右表中的记录行数",
|
|
@@ -36818,7 +36818,7 @@
|
|
|
36818
36818
|
"name 流数据过滤引擎的名称",
|
|
36819
36819
|
"user 创建流数据过滤引擎的用户名",
|
|
36820
36820
|
"status 流数据过滤引擎的状态,\"OK\" 表示可用,\"FATAL\" 表示不可用",
|
|
36821
|
-
"
|
|
36821
|
+
"lastErrMsg 最后一条错误信息 ",
|
|
36822
36822
|
"numRows 流数据过滤引擎中的记录行数",
|
|
36823
36823
|
"filters 流数据过滤引擎的过滤条件",
|
|
36824
36824
|
"================== ================================================="
|
|
@@ -82239,7 +82239,7 @@
|
|
|
82239
82239
|
{
|
|
82240
82240
|
"type": "text",
|
|
82241
82241
|
"value": [
|
|
82242
|
-
"在线修改可以分配给 DolphinDB 的最大内存空间(以 GB
|
|
82242
|
+
"在线修改可以分配给 DolphinDB 的最大内存空间(以 GB 为单位)大小。该命令只能由管理员在数据节点/计算节点上执行。可通过 getClusterPerf().maxMemSize 查看修改后的设置是否生效。",
|
|
82243
82243
|
"",
|
|
82244
82244
|
"请注意,此命令修改的配置值在系统重启后将失效。若需要配置值永久生效,请更改配置文件中的 *maxMemSize*。"
|
|
82245
82245
|
]
|
|
@@ -87196,7 +87196,7 @@
|
|
|
87196
87196
|
"",
|
|
87197
87197
|
"为满足各逻辑对应引擎的功能,该函数集合了(日级)时序引擎、响应式状态引擎和横截面引擎的参数。需要注意的是,由于部分为公共参数(如 keyColumn),若公共参数在不同计算逻辑下需要指定的值不同(如时序窗口按天分组,状态逻辑要求按股票代码分组,则需要配置不同的 keyColumn),不能使用该函数,只能通过级联实现。",
|
|
87198
87198
|
"",
|
|
87199
|
-
"返回一个表对象,为解析后流水线上第一个流计算引擎返回的表,向该表写入数据意味着这些数据进入流水线进行计算。删除时,需要根据 streamEngineParser 解析出的引擎对应的名称(详见 name
|
|
87199
|
+
"返回一个表对象,为解析后流水线上第一个流计算引擎返回的表,向该表写入数据意味着这些数据进入流水线进行计算。删除时,需要根据 streamEngineParser 解析出的引擎对应的名称(详见 name)单独进行删除。暂不支持通过一个函数删除全部引擎。",
|
|
87200
87200
|
"",
|
|
87201
87201
|
"根据上文,若要使用 streamEngineParser,必须根据业务场景提供的指标,分析业务中涉及的流计算引擎,将指标改写成 streamEngineParser 能够识别分解的 metrics。若 metrics 中包含了用户自定义函数,引擎对函数体内部的嵌套逻辑进一步进行解析。",
|
|
87202
87202
|
"",
|
|
@@ -92161,7 +92161,7 @@
|
|
|
92161
92161
|
"type": "text",
|
|
92162
92162
|
"value": [
|
|
92163
92163
|
".. meta:: ",
|
|
92164
|
-
" :keywords:
|
|
92164
|
+
" :keywords: Temporal"
|
|
92165
92165
|
]
|
|
92166
92166
|
}
|
|
92167
92167
|
]
|
|
@@ -92242,7 +92242,7 @@
|
|
|
92242
92242
|
"type": "text",
|
|
92243
92243
|
"value": [
|
|
92244
92244
|
".. meta:: ",
|
|
92245
|
-
" :keywords:
|
|
92245
|
+
" :keywords: Temporal"
|
|
92246
92246
|
]
|
|
92247
92247
|
}
|
|
92248
92248
|
]
|
|
@@ -92477,7 +92477,7 @@
|
|
|
92477
92477
|
"type": "text",
|
|
92478
92478
|
"value": [
|
|
92479
92479
|
".. meta:: ",
|
|
92480
|
-
" :keywords:
|
|
92480
|
+
" :keywords: Temporal"
|
|
92481
92481
|
]
|
|
92482
92482
|
}
|
|
92483
92483
|
]
|
package/language.js
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
const sql_keywords = [
|
|
2
|
+
// 不要单独算关键字比较好
|
|
3
|
+
// 'column',
|
|
4
|
+
// 'table',
|
|
5
|
+
// 'database',
|
|
2
6
|
'select',
|
|
3
7
|
'exec',
|
|
4
8
|
'update',
|
|
@@ -6,10 +10,12 @@ const sql_keywords = [
|
|
|
6
10
|
'insert into',
|
|
7
11
|
'create table',
|
|
8
12
|
'create database',
|
|
9
|
-
'alter',
|
|
10
|
-
|
|
11
|
-
'
|
|
12
|
-
'
|
|
13
|
+
'alter table',
|
|
14
|
+
// alter table ... add column_name datatype
|
|
15
|
+
'add',
|
|
16
|
+
'rename',
|
|
17
|
+
'to',
|
|
18
|
+
'drop',
|
|
13
19
|
'drop table',
|
|
14
20
|
'drop database',
|
|
15
21
|
'delete',
|
|
@@ -46,6 +52,7 @@ const sql_keywords = [
|
|
|
46
52
|
'on',
|
|
47
53
|
'like',
|
|
48
54
|
'values',
|
|
55
|
+
'if',
|
|
49
56
|
'exists',
|
|
50
57
|
'distinct',
|
|
51
58
|
'map',
|
|
@@ -67,7 +74,7 @@ export const keywords = [
|
|
|
67
74
|
'mapr',
|
|
68
75
|
'timer',
|
|
69
76
|
// 流程控制
|
|
70
|
-
'if',
|
|
77
|
+
// 'if',
|
|
71
78
|
// 'else',
|
|
72
79
|
'do',
|
|
73
80
|
'for',
|
package/language.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"language.js","sourceRoot":"","sources":["language.ts"],"names":[],"mappings":"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","sourcesContent":["const sql_keywords = [\n 'select',\n 'exec',\n 'update',\n \n 'insert',\n 'insert into',\n \n 'create table',\n 'create database',\n \n 'alter',\n 'alter add',\n 'alter rename',\n 'alter drop',\n \n 'drop table',\n 'drop database',\n \n 'delete',\n \n 'transaction',\n \n 'inner join',\n 'full join',\n 'full outer join',\n 'left join',\n 'left outer join',\n 'right join',\n 'right outer join',\n 'left semijoin',\n 'cross join',\n \n 'context by',\n 'partitioned by',\n 'group by',\n 'pivot by',\n 'order by',\n 'cgroup by',\n 'partition by',\n \n 'csort',\n 'limit',\n 'top',\n \n 'into',\n 'from',\n 'where',\n 'having',\n 'with',\n 'set',\n 'as',\n 'in',\n 'or',\n 'not',\n 'on',\n 'like',\n 'values',\n 'exists',\n 'distinct',\n 'map',\n \n 'between', 'and', // between ... and ...\n \n 'is null', 'is not null',\n \n // case when ... then ... end\n 'case', 'when', 'then', 'else', 'end',\n \n 'union', 'union all',\n \n 'nulls first', 'nulls last',\n \n 'asc', 'desc',\n]\n\n\nexport const keywords = [\n 'assert',\n \n 'const',\n 'mutable',\n \n 'def',\n 'defg',\n \n // 'map',\n 'mapr',\n \n 'timer',\n \n // 流程控制\n 'if',\n // 'else',\n 'do',\n 'for',\n 'while',\n 'return',\n 'continue',\n 'break',\n 'try',\n 'catch',\n 'throw',\n 'go',\n \n // 模块\n 'use',\n 'module',\n \n \n // 仅 Python 有的\n 'async',\n 'await',\n 'class',\n 'del',\n 'elif',\n 'except',\n 'finally',\n 'global',\n 'import',\n 'is',\n 'lambda',\n 'nonlocal',\n 'pass',\n 'raise',\n 'yield',\n \n \n // --- SQL\n ... sql_keywords,\n ... sql_keywords.map(keyword => keyword.toUpperCase())\n].sort((l, r) => { // 长的在前面,正则表达式先匹配全部,而不是部分单词,防止高亮显示不正确\n const delta_len = l.length - r.length\n if (delta_len !== 0)\n return -delta_len\n \n return 0 // 否则保留原本顺序\n})\n\n\nexport const constants = [\n 'NULL',\n 'true',\n 'false',\n 'pi',\n 'e',\n \n // --- form\n 'SCALAR',\n 'VECTOR',\n 'PAIR',\n 'MATRIX',\n 'SET',\n 'DICT',\n 'TABLE',\n // 'CHART',\n // 'CHUNK',\n \n // --- type\n 'VOID',\n 'BOOL',\n 'CHAR',\n 'SHORT',\n 'INT', 'INDEX',\n 'LONG',\n 'DATE',\n 'MONTH',\n 'TIME',\n 'MINUTE',\n 'SECOND',\n 'DATETIME',\n 'TIMESTAMP',\n 'NANOTIME',\n 'NANOTIMESTAMP',\n 'FLOAT',\n 'DOUBLE',\n 'SYMBOL',\n 'STRING',\n 'UUID',\n 'FUNCTIONDEF',\n 'HANDLE',\n 'CODE',\n 'DATASOURCE',\n 'RESOURCE',\n 'ANY',\n // 'COMPRESS',\n 'DICTIONARY',\n 'DATEHOUR',\n 'IPADDR',\n 'INT128',\n 'BLOB',\n 'COMPLEX',\n 'POINT',\n 'DURATION',\n 'OBJECT',\n 'DECIMAL32',\n 'DECIMAL64',\n \n // partition type\n 'SEQ',\n 'RANGE',\n 'HASH',\n 'VALUE',\n 'LIST',\n 'COMPO',\n \n \n // defined\n // https://www.dolphindb.cn/cn/help/FunctionsandCommands/FunctionReferences/d/defined.html\n 'VAR',\n 'SHARED',\n 'DEF',\n 'GLOBAL',\n \n \n // 用户权限管理\n // https://www.dolphindb.cn/cn/help/200/SystemManagement/UserAccessControl.html\n // https://www.dolphindb.cn/cn/help/200/FunctionsandCommands/CommandsReferences/d/deny.html\n 'TABLE_READ',\n 'TABLE_WRITE',\n 'TABLE_INSERT',\n 'TABLE_UPDATE',\n 'TABLE_DELETE',\n \n 'DBOBJ_CREATE',\n 'DBOBJ_DELETE',\n \n 'DB_DELETE',\n 'DB_INSERT',\n 'DB_MANAGE',\n 'DB_OWNER',\n 'DB_READ',\n 'DB_UPDATE',\n 'DB_WRITE',\n \n 'SCRIPT_EXEC',\n 'TASK_GROUP_MEM_LIMIT',\n 'TEST_EXEC',\n 'VIEW_EXEC',\n 'QUERY_RESULT_MEM_LIMIT',\n \n \n // hint\n // https://www.dolphindb.cn/cn/help/200/FunctionsandCommands/FunctionReferences/s/sql.html\n 'HINT_HASH',\n 'HINT_SNAPSHOT',\n 'HINT_KEEPORDER',\n 'HINT_SEQ',\n 'HINT_EXPLAIN',\n 'HINT_VECTORIZED',\n \n \n // --- seek mode\n 'HEAD',\n 'CURRENT',\n 'TAIL',\n \n // --- chart type\n // https://www.dolphindb.cn/cn/help/200/FunctionsandCommands/FunctionReferences/p/plot.html\n 'LINE',\n 'PIE',\n 'COLUMN',\n 'BAR',\n 'AREA',\n 'SCATTER',\n 'HISTOGRAM',\n 'KLINE',\n \n \n // --- log level\n 'DEBUG',\n 'INFO',\n 'WARNING',\n 'ERROR',\n \n // keep duplicates\n // https://www.dolphindb.cn/cn/help/200/FunctionsandCommands/FunctionReferences/c/createPartitionedTable.html?highlight=first\n 'FIRST',\n 'LAST',\n 'ALL',\n \n // keep\n // https://www.dolphindb.cn/cn/help/200/FunctionsandCommands/FunctionReferences/i/isDuplicated.html?highlight=none\n 'NONE',\n \n 'HASH_PTN',\n \n // 仅 Python 有的\n 'True',\n 'False',\n 'None',\n \n] as const\n\n\n\nexport const tm_language = {\n $schema: 'https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json',\n \n name: 'DolphinDB',\n \n scopeName: 'source.dolphindb',\n \n patterns: [\n {\n match: '\\\\.\\\\.\\\\.',\n name: 'invalid.ellipsis.dolphindb'\n },\n {\n include: '#keyword'\n },\n {\n include: '#literal'\n },\n {\n include: '#comment'\n },\n {\n include: '#decorator'\n },\n {\n include: '#variable'\n },\n {\n include: '#operator'\n },\n {\n include: '#method_call'\n },\n {\n include: '#function_call'\n },\n {\n include: '#property'\n },\n {\n match: ';',\n name: 'punctuation.terminator.statement.dolphindb'\n },\n {\n match: ',',\n name: 'punctuation.separator.commma.dolphindb'\n }\n ],\n \n \n repository: {\n keyword: {\n // \\b: word boundary\n // (?<![.$]): boundary 不是 . 或 $\n // ?!\\s*: 不是 label\n match: `\\\\b(?<![.$])(${keywords.join('|')})(?!(\\\\s*:|\\\\())\\\\b`,\n name: 'keyword.control.dolphindb'\n },\n \n literal: {\n patterns: [\n { include: '#constant' },\n { include: '#datetime' },\n { include: '#string' },\n { include: '#number' },\n ]\n },\n \n constant: {\n match: `\\\\b(?<![.$])(${constants.join('|')})(?!\\\\s*:)\\\\b`,\n name: 'constant.language.int.dolphindb'\n },\n \n decorator: {\n match: '^@testing',\n name: 'meta.decorator.dolphindb',\n },\n \n datetime: {\n patterns: [\n {\n match: '\\\\b[0-9]{4}[.][0-9]{2}[.][0-9]{2}[T ][0-9]{2}:[0-9]{2}:[0-9]{2}([.][0-9]{3,9})?\\\\b',\n name: 'constant.numeric.datetime.datetime.dolphindb',\n },\n {\n match: '\\\\b[0-9]{4}\\\\.[0-9]{2}M\\\\b',\n name: 'constant.numeric.datetime.month.dolphindb',\n },\n {\n match: '\\\\b[0-9]{4}\\\\.[0-9]{2}\\\\.[0-9]{2}\\\\b',\n name: 'constant.numeric.datetime.date.dolphindb',\n },\n {\n match: '\\\\b[0-9]{2}:[0-9]{2}:[0-9]{2}([.][0-9]{3,9})?\\\\b',\n name: 'constant.numeric.datetime.time.dolphindb',\n },\n {\n match: '\\\\b[0-9]{2}:[0-9]{2}m\\\\b',\n name: 'constant.numeric.datetime.minute.dolphindb',\n },\n ]\n },\n \n string: {\n patterns: [\n {\n include: '#string_single_quoted'\n },\n {\n include: '#string_double_quoted'\n },\n {\n begin: \"'''\",\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.string.begin.dolphindb'\n }\n },\n end: \"'''\",\n endCaptures: {\n 0: {\n name: 'punctuation.definition.string.end.dolphindb'\n }\n },\n name: 'string.quoted.single.heredoc.dolphindb',\n patterns: [\n {\n captures: {\n 1: {\n name: 'punctuation.definition.escape.backslash.dolphindb'\n }\n },\n match: '(\\\\\\\\).',\n name: 'constant.character.escape.backslash.dolphindb'\n }\n ]\n },\n {\n begin: '\"\"\"',\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.string.begin.dolphindb'\n }\n },\n end: '\"\"\"',\n endCaptures: {\n 0: {\n name: 'punctuation.definition.string.end.dolphindb'\n }\n },\n name: 'string.quoted.double.heredoc.dolphindb',\n patterns: [\n {\n captures: {\n 1: {\n name: 'punctuation.definition.escape.backslash.dolphindb'\n }\n },\n match: '(\\\\\\\\).',\n name: 'constant.character.escape.backslash.dolphindb'\n },\n {\n include: '#interpolated_dolphindb'\n }\n ]\n },\n {\n match: '`[\\\\w\\\\.]+',\n name: 'string.quoted.other.dolphindb'\n },\n {\n match: '(`)(.*)(`)',\n name: 'string.quoted.script.dolphindb',\n captures: {\n 1: {\n name: 'punctuation.definition.string.begin.dolphindb'\n },\n 2: {\n name: 'source.js.embedded.dolphindb',\n patterns: [\n {\n include: 'source.js'\n }\n ]\n },\n 3: {\n name: 'punctuation.definition.string.end.dolphindb'\n }\n }\n }\n ]\n },\n \n number: {\n patterns: [\n {\n match: '\\\\b[01]+[bB]\\\\b',\n name: 'constant.numeric.binary.dolphindb'\n },\n {\n // 97c\n match: '\\\\b[0-9]+([clhsmyM]|ms)\\\\b',\n name: 'constant.numeric.dolphindb'\n },\n {\n // 1.2f, 1f\n match: '\\\\b[0-9]+(\\\\.[0-9]+)?f\\\\b',\n name: 'constant.numeric.dolphindb'\n },\n {\n match: \n '(?x)\\n' +\n '(?:\\n' +\n ' (?:\\\\b[0-9]+(\\\\.)[0-9]+[eE][+-]?[0-9]+\\\\b)| # 1.1E+3\\n' +\n ' (?:\\\\b[0-9]+(\\\\.)[eE][+-]?[0-9]+\\\\b)| # 1.E+3\\n' +\n ' (?:\\\\b(\\\\.)[0-9]+[eE][+-]?[0-9]+\\\\b)| # .1E+3\\n' +\n ' (?:\\\\b[0-9]+[eE][+-]?[0-9]+\\\\b)| # 1E+3\\n' +\n ' (?:\\\\b[0-9]+(\\\\.)[0-9]+\\\\b)| # 1.1\\n' +\n ' (?:\\\\b[0-9]+(?=\\\\.{2,3}))| # 1 followed by a slice\\n' +\n ' (?:\\\\b[0-9]+(\\\\.)\\\\b)| # 1.\\n' +\n ' (?:\\\\b(\\\\.)[0-9]+\\\\b)| # .1\\n' +\n ' (?:\\\\b[0-9]+\\\\b(?!\\\\.)) # 1\\n' +\n ')\\n',\n \n captures: {\n 0: {\n name: 'constant.numeric.decimal.dolphindb'\n },\n 1: {\n name: 'punctuation.separator.decimal.period.dolphindb'\n },\n 2: {\n name: 'punctuation.separator.decimal.period.dolphindb'\n },\n 3: {\n name: 'punctuation.separator.decimal.period.dolphindb'\n },\n 4: {\n name: 'punctuation.separator.decimal.period.dolphindb'\n },\n 5: {\n name: 'punctuation.separator.decimal.period.dolphindb'\n },\n 6: {\n name: 'punctuation.separator.decimal.period.dolphindb'\n }\n }\n },\n ]\n },\n \n string_single_quoted: {\n patterns: [\n {\n begin: \"'\",\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.string.begin.dolphindb'\n }\n },\n end: \"'\",\n endCaptures: {\n 0: {\n name: 'punctuation.definition.string.end.dolphindb'\n }\n },\n name: 'string.quoted.single.dolphindb',\n patterns: [\n {\n captures: {\n 1: {\n name: 'punctuation.definition.escape.backslash.dolphindb'\n }\n },\n match: '(\\\\\\\\)(x[0-9A-Fa-f]{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.)',\n name: 'constant.character.escape.backslash.dolphindb'\n }\n ]\n }\n ]\n },\n \n string_double_quoted: {\n patterns: [\n {\n begin: '\"',\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.string.begin.dolphindb'\n }\n },\n end: '\"',\n endCaptures: {\n 0: {\n name: 'punctuation.definition.string.end.dolphindb'\n }\n },\n name: 'string.quoted.double.dolphindb',\n patterns: [\n {\n captures: {\n 1: {\n name: 'punctuation.definition.escape.backslash.dolphindb'\n }\n },\n match: '(\\\\\\\\)(x[0-9A-Fa-f]{2}|[0-2][0-7]{0,2}|3[0-6][0-7]|37[0-7]?|[4-7][0-7]?|.)',\n name: 'constant.character.escape.backslash.dolphindb'\n },\n {\n include: '#interpolated_dolphindb'\n }\n ]\n }\n ]\n },\n \n function_call: {\n patterns: [\n {\n begin: '(@)?([\\\\w$]+!?)\\\\s*(?=\\\\()',\n beginCaptures: {\n 1: {\n name: 'variable.other.readwrite.instance.dolphindb'\n },\n 2: {\n patterns: [\n {\n include: '#function_name'\n }\n ]\n }\n },\n end: '(?<=\\\\))',\n name: 'meta.function-call.dolphindb',\n patterns: [\n {\n include: '#arguments'\n }\n ]\n }\n ]\n },\n \n function_name: {\n patterns: [\n {\n match: '[a-zA-Z_$][\\\\w$]*',\n name: 'entity.name.function.dolphindb'\n },\n {\n match: '\\\\d[\\\\w$]*',\n name: 'invalid.illegal.identifier.dolphindb'\n }\n ]\n },\n \n function_params: {\n patterns: [\n {\n begin: '\\\\(',\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.parameters.begin.bracket.round.dolphindb'\n }\n },\n end: '\\\\)',\n endCaptures: {\n 0: {\n name: 'punctuation.definition.parameters.end.bracket.round.dolphindb'\n }\n },\n name: 'meta.parameters.dolphindb',\n patterns: [\n {\n include: '#variable'\n },\n {\n match: '(@(?:[a-zA-Z_$][\\\\w$]*)?)(\\\\.\\\\.\\\\.)?',\n captures: {\n 1: {\n name: 'variable.parameter.function.readwrite.instance.dolphindb'\n },\n 2: {\n name: 'keyword.operator.splat.dolphindb'\n }\n }\n },\n {\n include: '$self'\n }\n ]\n }\n ]\n },\n \n comment: {\n patterns: [\n {\n begin: '/\\\\*',\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.comment.dolphindb'\n }\n },\n end: '\\\\*/',\n endCaptures: {\n 0: {\n name: 'punctuation.definition.comment.dolphindb'\n }\n },\n name: 'comment.block.dolphindb'\n },\n {\n begin: '//',\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.comment.dolphindb'\n }\n },\n end: '$',\n name: 'comment.line.number-sign.dolphindb'\n },\n {\n begin: '#',\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.comment.dolphindb'\n }\n },\n end: '$',\n name: 'comment.line.number-sign.dolphindb'\n }\n ]\n },\n \n arguments: {\n patterns: [\n {\n begin: '\\\\(',\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.arguments.begin.bracket.round.dolphindb'\n }\n },\n end: '\\\\)',\n endCaptures: {\n 0: {\n name: 'punctuation.definition.arguments.end.bracket.round.dolphindb'\n }\n },\n name: 'meta.arguments.dolphindb',\n patterns: [\n {\n include: '$self'\n },\n {\n include: '#literal'\n },\n {\n include: '#variable'\n }\n ]\n }\n ]\n },\n \n variable: {\n patterns: [\n {\n match: '(@)([a-zA-Z_\\\\$]\\\\w*)?',\n name: 'variable.other.readwrite.instance.dolphindb'\n }\n ]\n },\n \n interpolated_dolphindb: {\n patterns: [\n {\n begin: '\\\\#\\\\{',\n captures: {\n 0: {\n name: 'punctuation.section.embedded.dolphindb'\n }\n },\n end: '\\\\}',\n name: 'source.dolphindb.embedded.source',\n patterns: [\n {\n include: '$self'\n }\n ]\n }\n ]\n },\n \n method_call: {\n patterns: [\n {\n begin: '(?:(\\\\.)|(::))\\\\s*([\\\\w$]+!?)(?=\\\\()',\n beginCaptures: {\n 1: {\n name: 'punctuation.separator.method.period.dolphindb'\n },\n 2: {\n name: 'keyword.operator.prototype.dolphindb'\n },\n 3: {\n patterns: [\n {\n include: '#method_name'\n }\n ]\n }\n },\n end: '(?<=\\\\))',\n name: 'meta.method-call.dolphindb',\n patterns: [\n {\n include: '#arguments'\n }\n ]\n }\n ]\n },\n \n method_name: {\n patterns: [\n {\n match: '[a-zA-Z_$][\\\\w$]*',\n name: 'entity.name.function.dolphindb'\n },\n {\n match: '\\\\d[\\\\w$]*',\n name: 'invalid.illegal.identifier.dolphindb'\n }\n ]\n },\n \n operator: {\n patterns: [\n {\n match: '<<|>>',\n name: 'keyword.operator.bitwise.shift.dolphindb'\n },\n {\n match: '!=|<=|>=|==|>|<',\n name: 'keyword.operator.comparison.dolphindb'\n },\n {\n match: '<-|->',\n name: 'keyword.operator.join.dolphindb'\n },\n {\n match: '&&|!|\\\\|\\\\|',\n name: 'keyword.operator.logical.dolphindb'\n },\n {\n match: '&|\\\\||\\\\^',\n name: 'keyword.operator.bitwise.dolphindb'\n },\n {\n match: '\\\\.\\\\.',\n name: 'keyword.operator.splat.dolphindb'\n },\n {\n match: '\\\\?',\n name: 'keyword.operator.existential.dolphindb'\n },\n {\n match: '/|<-|%|\\\\*|/|-|\\\\$|\\\\+',\n name: 'keyword.operator.dolphindb'\n },\n {\n match: '([a-zA-Z$_][\\\\w$]*)?\\\\s*(=|:(?!:))(?![>=])',\n captures: {\n 1: {\n name: 'variable.assignment.dolphindb'\n },\n 2: {\n name: 'keyword.operator.assignment.dolphindb'\n }\n }\n }\n ]\n },\n \n property: {\n patterns: [\n {\n match: '(?:(\\\\.)|(::))\\\\s*([A-Z][A-Z0-9_$]*\\\\b\\\\$*)(?=\\\\s*\\\\??(\\\\.\\\\s*[a-zA-Z_$]\\\\w*|::))',\n captures: {\n 1: {\n name: 'punctuation.separator.property.period.dolphindb'\n },\n 2: {\n name: 'keyword.operator.prototype.dolphindb'\n },\n 3: {\n name: 'constant.other.object.property.dolphindb'\n }\n }\n },\n {\n match: '(?:(\\\\.)|(::))\\\\s*(\\\\$*[a-zA-Z_$][\\\\w$]*)(?=\\\\s*\\\\??(\\\\.\\\\s*[a-zA-Z_$]\\\\w*|::))',\n captures: {\n 1: {\n name: 'punctuation.separator.property.period.dolphindb'\n },\n 2: {\n name: 'keyword.operator.prototype.dolphindb'\n },\n 3: {\n name: 'variable.other.object.property.dolphindb'\n }\n }\n },\n {\n match: '(?:(\\\\.)|(::))\\\\s*([A-Z][A-Z0-9_$]*\\\\b\\\\$*)',\n captures: {\n 1: {\n name: 'punctuation.separator.property.period.dolphindb'\n },\n 2: {\n name: 'keyword.operator.prototype.dolphindb'\n },\n 3: {\n name: 'constant.other.property.dolphindb'\n }\n }\n },\n {\n match: '(?:(\\\\.)|(::))\\\\s*(\\\\$*[a-zA-Z_$][\\\\w$]*)',\n captures: {\n 1: {\n name: 'punctuation.separator.property.period.dolphindb'\n },\n 2: {\n name: 'keyword.operator.prototype.dolphindb'\n },\n 3: {\n name: 'variable.other.property.dolphindb'\n }\n }\n },\n {\n match: '(?:(\\\\.)|(::))\\\\s*([0-9][\\\\w$]*)',\n captures: {\n 1: {\n name: 'punctuation.separator.property.period.dolphindb'\n },\n 2: {\n name: 'keyword.operator.prototype.dolphindb'\n },\n 3: {\n name: 'invalid.illegal.identifier.dolphindb'\n }\n }\n }\n ]\n }\n }\n} as Block\n\n\ninterface Block {\n patterns: Pattern[]\n repository?: Record<string, Pattern | Block>\n}\n\ntype Pattern = Match | Include | Block\n\ntype Match = MatchOne | MatchBeginEnd\n\ninterface MatchOne {\n /** a single-line regular expression */\n match: RegExp | string\n \n /** This is the scope that will be applied to the matched text */\n name?: string\n \n /** This use of the captures > patterns structure is extremely important. \n Without it, a stretch of text matched by a match rule is considered finished, and \n TextMate’s search proceeds to the rest of the line after the matched text. \n With it, the stretch of matched text itself becomes a candidate for further matches. \n */\n captures?: Captures\n}\n\ninterface MatchBeginEnd {\n begin: RegExp | string\n \n end: RegExp | string\n \n /** This is the scope (or an expression evaluating to a scope) to be applied to \n the entire matched stretch(es) of text starting at the start of the begin match.\n */\n name?: string\n \n /** This is the scope to be applied to what’s between the begin match and the end match (or the end of the document). */\n contentName?: string\n \n /** it applies to the region between the begin and end matches. */\n patterns?: Pattern[]\n \n beginCaptures?: Captures\n \n endCaptures?: Captures\n \n whileCaptures?: Captures\n \n /** If the name or number of the matched group happens to be the same for both the begin pattern and the other pattern, \n you can (if appropriate) use captures as a shorthand to avoid saying the same thing twice.\n */\n captures?: Captures\n \n applyEndPatternLast?: 1\n}\n\ninterface Include {\n include: string\n}\n\ntype Captures = Record<string | number, {\n /** This is the scope that will be assigned to the matched group text. */\n name?: string\n \n /** This is a list of match rules to be sought within the matched group text \n — thus permitting the search for matches to continue inside the matched text.\n */\n patterns?: Pattern[]\n}>\n\n"]}
|
|
1
|
+
{"version":3,"file":"language.js","sourceRoot":"","sources":["language.ts"],"names":[],"mappings":"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","sourcesContent":["const sql_keywords = [\n // 不要单独算关键字比较好\n // 'column',\n // 'table',\n // 'database',\n \n 'select',\n 'exec',\n 'update',\n \n 'insert',\n 'insert into',\n \n 'create table',\n 'create database',\n \n 'alter table',\n \n // alter table ... add column_name datatype\n 'add',\n 'rename',\n 'to',\n 'drop',\n \n \n 'drop table',\n 'drop database',\n \n 'delete',\n \n 'transaction',\n \n 'inner join',\n 'full join',\n 'full outer join',\n 'left join',\n 'left outer join',\n 'right join',\n 'right outer join',\n 'left semijoin',\n 'cross join',\n \n 'context by',\n 'partitioned by',\n 'group by',\n 'pivot by',\n 'order by',\n 'cgroup by',\n 'partition by',\n \n 'csort',\n 'limit',\n 'top',\n \n 'into',\n 'from',\n 'where',\n 'having',\n 'with',\n 'set',\n 'as',\n 'in',\n 'or',\n 'not',\n 'on',\n 'like',\n 'values',\n 'if',\n 'exists',\n 'distinct',\n 'map',\n \n \n 'between', 'and', // between ... and ...\n \n 'is null', 'is not null',\n \n // case when ... then ... end\n 'case', 'when', 'then', 'else', 'end',\n \n 'union', 'union all',\n \n 'nulls first', 'nulls last',\n \n 'asc', 'desc',\n]\n\n\nexport const keywords = [\n 'assert',\n \n 'const',\n 'mutable',\n \n 'def',\n 'defg',\n \n // 'map',\n 'mapr',\n \n 'timer',\n \n // 流程控制\n // 'if',\n // 'else',\n 'do',\n 'for',\n 'while',\n 'return',\n 'continue',\n 'break',\n 'try',\n 'catch',\n 'throw',\n 'go',\n \n // 模块\n 'use',\n 'module',\n \n \n // 仅 Python 有的\n 'async',\n 'await',\n 'class',\n 'del',\n 'elif',\n 'except',\n 'finally',\n 'global',\n 'import',\n 'is',\n 'lambda',\n 'nonlocal',\n 'pass',\n 'raise',\n 'yield',\n \n \n // --- SQL\n ... sql_keywords,\n ... sql_keywords.map(keyword => keyword.toUpperCase())\n].sort((l, r) => { // 长的在前面,正则表达式先匹配全部,而不是部分单词,防止高亮显示不正确\n const delta_len = l.length - r.length\n if (delta_len !== 0)\n return -delta_len\n \n return 0 // 否则保留原本顺序\n})\n\n\nexport const constants = [\n 'NULL',\n 'true',\n 'false',\n 'pi',\n 'e',\n \n // --- form\n 'SCALAR',\n 'VECTOR',\n 'PAIR',\n 'MATRIX',\n 'SET',\n 'DICT',\n 'TABLE',\n // 'CHART',\n // 'CHUNK',\n \n // --- type\n 'VOID',\n 'BOOL',\n 'CHAR',\n 'SHORT',\n 'INT', 'INDEX',\n 'LONG',\n 'DATE',\n 'MONTH',\n 'TIME',\n 'MINUTE',\n 'SECOND',\n 'DATETIME',\n 'TIMESTAMP',\n 'NANOTIME',\n 'NANOTIMESTAMP',\n 'FLOAT',\n 'DOUBLE',\n 'SYMBOL',\n 'STRING',\n 'UUID',\n 'FUNCTIONDEF',\n 'HANDLE',\n 'CODE',\n 'DATASOURCE',\n 'RESOURCE',\n 'ANY',\n // 'COMPRESS',\n 'DICTIONARY',\n 'DATEHOUR',\n 'IPADDR',\n 'INT128',\n 'BLOB',\n 'COMPLEX',\n 'POINT',\n 'DURATION',\n 'OBJECT',\n 'DECIMAL32',\n 'DECIMAL64',\n \n // partition type\n 'SEQ',\n 'RANGE',\n 'HASH',\n 'VALUE',\n 'LIST',\n 'COMPO',\n \n \n // defined\n // https://www.dolphindb.cn/cn/help/FunctionsandCommands/FunctionReferences/d/defined.html\n 'VAR',\n 'SHARED',\n 'DEF',\n 'GLOBAL',\n \n \n // 用户权限管理\n // https://www.dolphindb.cn/cn/help/200/SystemManagement/UserAccessControl.html\n // https://www.dolphindb.cn/cn/help/200/FunctionsandCommands/CommandsReferences/d/deny.html\n 'TABLE_READ',\n 'TABLE_WRITE',\n 'TABLE_INSERT',\n 'TABLE_UPDATE',\n 'TABLE_DELETE',\n \n 'DBOBJ_CREATE',\n 'DBOBJ_DELETE',\n \n 'DB_DELETE',\n 'DB_INSERT',\n 'DB_MANAGE',\n 'DB_OWNER',\n 'DB_READ',\n 'DB_UPDATE',\n 'DB_WRITE',\n \n 'SCRIPT_EXEC',\n 'TASK_GROUP_MEM_LIMIT',\n 'TEST_EXEC',\n 'VIEW_EXEC',\n 'QUERY_RESULT_MEM_LIMIT',\n \n \n // hint\n // https://www.dolphindb.cn/cn/help/200/FunctionsandCommands/FunctionReferences/s/sql.html\n 'HINT_HASH',\n 'HINT_SNAPSHOT',\n 'HINT_KEEPORDER',\n 'HINT_SEQ',\n 'HINT_EXPLAIN',\n 'HINT_VECTORIZED',\n \n \n // --- seek mode\n 'HEAD',\n 'CURRENT',\n 'TAIL',\n \n // --- chart type\n // https://www.dolphindb.cn/cn/help/200/FunctionsandCommands/FunctionReferences/p/plot.html\n 'LINE',\n 'PIE',\n 'COLUMN',\n 'BAR',\n 'AREA',\n 'SCATTER',\n 'HISTOGRAM',\n 'KLINE',\n \n \n // --- log level\n 'DEBUG',\n 'INFO',\n 'WARNING',\n 'ERROR',\n \n // keep duplicates\n // https://www.dolphindb.cn/cn/help/200/FunctionsandCommands/FunctionReferences/c/createPartitionedTable.html?highlight=first\n 'FIRST',\n 'LAST',\n 'ALL',\n \n // keep\n // https://www.dolphindb.cn/cn/help/200/FunctionsandCommands/FunctionReferences/i/isDuplicated.html?highlight=none\n 'NONE',\n \n 'HASH_PTN',\n \n // 仅 Python 有的\n 'True',\n 'False',\n 'None',\n \n] as const\n\n\n\nexport const tm_language = {\n $schema: 'https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json',\n \n name: 'DolphinDB',\n \n scopeName: 'source.dolphindb',\n \n patterns: [\n {\n match: '\\\\.\\\\.\\\\.',\n name: 'invalid.ellipsis.dolphindb'\n },\n {\n include: '#keyword'\n },\n {\n include: '#literal'\n },\n {\n include: '#comment'\n },\n {\n include: '#decorator'\n },\n {\n include: '#variable'\n },\n {\n include: '#operator'\n },\n {\n include: '#method_call'\n },\n {\n include: '#function_call'\n },\n {\n include: '#property'\n },\n {\n match: ';',\n name: 'punctuation.terminator.statement.dolphindb'\n },\n {\n match: ',',\n name: 'punctuation.separator.commma.dolphindb'\n }\n ],\n \n \n repository: {\n keyword: {\n // \\b: word boundary\n // (?<![.$]): boundary 不是 . 或 $\n // ?!\\s*: 不是 label\n match: `\\\\b(?<![.$])(${keywords.join('|')})(?!(\\\\s*:|\\\\())\\\\b`,\n name: 'keyword.control.dolphindb'\n },\n \n literal: {\n patterns: [\n { include: '#constant' },\n { include: '#datetime' },\n { include: '#string' },\n { include: '#number' },\n ]\n },\n \n constant: {\n match: `\\\\b(?<![.$])(${constants.join('|')})(?!\\\\s*:)\\\\b`,\n name: 'constant.language.int.dolphindb'\n },\n \n decorator: {\n match: '^@testing',\n name: 'meta.decorator.dolphindb',\n },\n \n datetime: {\n patterns: [\n {\n match: '\\\\b[0-9]{4}[.][0-9]{2}[.][0-9]{2}[T ][0-9]{2}:[0-9]{2}:[0-9]{2}([.][0-9]{3,9})?\\\\b',\n name: 'constant.numeric.datetime.datetime.dolphindb',\n },\n {\n match: '\\\\b[0-9]{4}\\\\.[0-9]{2}M\\\\b',\n name: 'constant.numeric.datetime.month.dolphindb',\n },\n {\n match: '\\\\b[0-9]{4}\\\\.[0-9]{2}\\\\.[0-9]{2}\\\\b',\n name: 'constant.numeric.datetime.date.dolphindb',\n },\n {\n match: '\\\\b[0-9]{2}:[0-9]{2}:[0-9]{2}([.][0-9]{3,9})?\\\\b',\n name: 'constant.numeric.datetime.time.dolphindb',\n },\n {\n match: '\\\\b[0-9]{2}:[0-9]{2}m\\\\b',\n name: 'constant.numeric.datetime.minute.dolphindb',\n },\n ]\n },\n \n string: {\n patterns: [\n {\n include: '#string_single_quoted'\n },\n {\n include: '#string_double_quoted'\n },\n {\n begin: \"'''\",\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.string.begin.dolphindb'\n }\n },\n end: \"'''\",\n endCaptures: {\n 0: {\n name: 'punctuation.definition.string.end.dolphindb'\n }\n },\n name: 'string.quoted.single.heredoc.dolphindb',\n patterns: [\n {\n captures: {\n 1: {\n name: 'punctuation.definition.escape.backslash.dolphindb'\n }\n },\n match: '(\\\\\\\\).',\n name: 'constant.character.escape.backslash.dolphindb'\n }\n ]\n },\n {\n begin: '\"\"\"',\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.string.begin.dolphindb'\n }\n },\n end: '\"\"\"',\n endCaptures: {\n 0: {\n name: 'punctuation.definition.string.end.dolphindb'\n }\n },\n name: 'string.quoted.double.heredoc.dolphindb',\n patterns: [\n {\n captures: {\n 1: {\n name: 'punctuation.definition.escape.backslash.dolphindb'\n }\n },\n match: '(\\\\\\\\).',\n name: 'constant.character.escape.backslash.dolphindb'\n },\n {\n include: '#interpolated_dolphindb'\n }\n ]\n },\n {\n match: '`[\\\\w\\\\.]+',\n name: 'string.quoted.other.dolphindb'\n },\n {\n match: '(`)(.*)(`)',\n name: 'string.quoted.script.dolphindb',\n captures: {\n 1: {\n name: 'punctuation.definition.string.begin.dolphindb'\n },\n 2: {\n name: 'source.js.embedded.dolphindb',\n patterns: [\n {\n include: 'source.js'\n }\n ]\n },\n 3: {\n name: 'punctuation.definition.string.end.dolphindb'\n }\n }\n }\n ]\n },\n \n number: {\n patterns: [\n {\n match: '\\\\b[01]+[bB]\\\\b',\n name: 'constant.numeric.binary.dolphindb'\n },\n {\n // 97c\n match: '\\\\b[0-9]+([clhsmyM]|ms)\\\\b',\n name: 'constant.numeric.dolphindb'\n },\n {\n // 1.2f, 1f\n match: '\\\\b[0-9]+(\\\\.[0-9]+)?f\\\\b',\n name: 'constant.numeric.dolphindb'\n },\n {\n match: \n '(?x)\\n' +\n '(?:\\n' +\n ' (?:\\\\b[0-9]+(\\\\.)[0-9]+[eE][+-]?[0-9]+\\\\b)| # 1.1E+3\\n' +\n ' (?:\\\\b[0-9]+(\\\\.)[eE][+-]?[0-9]+\\\\b)| # 1.E+3\\n' +\n ' (?:\\\\b(\\\\.)[0-9]+[eE][+-]?[0-9]+\\\\b)| # .1E+3\\n' +\n ' (?:\\\\b[0-9]+[eE][+-]?[0-9]+\\\\b)| # 1E+3\\n' +\n ' (?:\\\\b[0-9]+(\\\\.)[0-9]+\\\\b)| # 1.1\\n' +\n ' (?:\\\\b[0-9]+(?=\\\\.{2,3}))| # 1 followed by a slice\\n' +\n ' (?:\\\\b[0-9]+(\\\\.)\\\\b)| # 1.\\n' +\n ' (?:\\\\b(\\\\.)[0-9]+\\\\b)| # .1\\n' +\n ' (?:\\\\b[0-9]+\\\\b(?!\\\\.)) # 1\\n' +\n ')\\n',\n \n captures: {\n 0: {\n name: 'constant.numeric.decimal.dolphindb'\n },\n 1: {\n name: 'punctuation.separator.decimal.period.dolphindb'\n },\n 2: {\n name: 'punctuation.separator.decimal.period.dolphindb'\n },\n 3: {\n name: 'punctuation.separator.decimal.period.dolphindb'\n },\n 4: {\n name: 'punctuation.separator.decimal.period.dolphindb'\n },\n 5: {\n name: 'punctuation.separator.decimal.period.dolphindb'\n },\n 6: {\n name: 'punctuation.separator.decimal.period.dolphindb'\n }\n }\n },\n ]\n },\n \n string_single_quoted: {\n patterns: [\n {\n begin: \"'\",\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.string.begin.dolphindb'\n }\n },\n end: \"'\",\n endCaptures: {\n 0: {\n name: 'punctuation.definition.string.end.dolphindb'\n }\n },\n name: 'string.quoted.single.dolphindb',\n patterns: [\n {\n captures: {\n 1: {\n name: 'punctuation.definition.escape.backslash.dolphindb'\n }\n },\n match: '(\\\\\\\\)(x[0-9A-Fa-f]{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.)',\n name: 'constant.character.escape.backslash.dolphindb'\n }\n ]\n }\n ]\n },\n \n string_double_quoted: {\n patterns: [\n {\n begin: '\"',\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.string.begin.dolphindb'\n }\n },\n end: '\"',\n endCaptures: {\n 0: {\n name: 'punctuation.definition.string.end.dolphindb'\n }\n },\n name: 'string.quoted.double.dolphindb',\n patterns: [\n {\n captures: {\n 1: {\n name: 'punctuation.definition.escape.backslash.dolphindb'\n }\n },\n match: '(\\\\\\\\)(x[0-9A-Fa-f]{2}|[0-2][0-7]{0,2}|3[0-6][0-7]|37[0-7]?|[4-7][0-7]?|.)',\n name: 'constant.character.escape.backslash.dolphindb'\n },\n {\n include: '#interpolated_dolphindb'\n }\n ]\n }\n ]\n },\n \n function_call: {\n patterns: [\n {\n begin: '(@)?([\\\\w$]+!?)\\\\s*(?=\\\\()',\n beginCaptures: {\n 1: {\n name: 'variable.other.readwrite.instance.dolphindb'\n },\n 2: {\n patterns: [\n {\n include: '#function_name'\n }\n ]\n }\n },\n end: '(?<=\\\\))',\n name: 'meta.function-call.dolphindb',\n patterns: [\n {\n include: '#arguments'\n }\n ]\n }\n ]\n },\n \n function_name: {\n patterns: [\n {\n match: '[a-zA-Z_$][\\\\w$]*',\n name: 'entity.name.function.dolphindb'\n },\n {\n match: '\\\\d[\\\\w$]*',\n name: 'invalid.illegal.identifier.dolphindb'\n }\n ]\n },\n \n function_params: {\n patterns: [\n {\n begin: '\\\\(',\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.parameters.begin.bracket.round.dolphindb'\n }\n },\n end: '\\\\)',\n endCaptures: {\n 0: {\n name: 'punctuation.definition.parameters.end.bracket.round.dolphindb'\n }\n },\n name: 'meta.parameters.dolphindb',\n patterns: [\n {\n include: '#variable'\n },\n {\n match: '(@(?:[a-zA-Z_$][\\\\w$]*)?)(\\\\.\\\\.\\\\.)?',\n captures: {\n 1: {\n name: 'variable.parameter.function.readwrite.instance.dolphindb'\n },\n 2: {\n name: 'keyword.operator.splat.dolphindb'\n }\n }\n },\n {\n include: '$self'\n }\n ]\n }\n ]\n },\n \n comment: {\n patterns: [\n {\n begin: '/\\\\*',\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.comment.dolphindb'\n }\n },\n end: '\\\\*/',\n endCaptures: {\n 0: {\n name: 'punctuation.definition.comment.dolphindb'\n }\n },\n name: 'comment.block.dolphindb'\n },\n {\n begin: '//',\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.comment.dolphindb'\n }\n },\n end: '$',\n name: 'comment.line.number-sign.dolphindb'\n },\n {\n begin: '#',\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.comment.dolphindb'\n }\n },\n end: '$',\n name: 'comment.line.number-sign.dolphindb'\n }\n ]\n },\n \n arguments: {\n patterns: [\n {\n begin: '\\\\(',\n beginCaptures: {\n 0: {\n name: 'punctuation.definition.arguments.begin.bracket.round.dolphindb'\n }\n },\n end: '\\\\)',\n endCaptures: {\n 0: {\n name: 'punctuation.definition.arguments.end.bracket.round.dolphindb'\n }\n },\n name: 'meta.arguments.dolphindb',\n patterns: [\n {\n include: '$self'\n },\n {\n include: '#literal'\n },\n {\n include: '#variable'\n }\n ]\n }\n ]\n },\n \n variable: {\n patterns: [\n {\n match: '(@)([a-zA-Z_\\\\$]\\\\w*)?',\n name: 'variable.other.readwrite.instance.dolphindb'\n }\n ]\n },\n \n interpolated_dolphindb: {\n patterns: [\n {\n begin: '\\\\#\\\\{',\n captures: {\n 0: {\n name: 'punctuation.section.embedded.dolphindb'\n }\n },\n end: '\\\\}',\n name: 'source.dolphindb.embedded.source',\n patterns: [\n {\n include: '$self'\n }\n ]\n }\n ]\n },\n \n method_call: {\n patterns: [\n {\n begin: '(?:(\\\\.)|(::))\\\\s*([\\\\w$]+!?)(?=\\\\()',\n beginCaptures: {\n 1: {\n name: 'punctuation.separator.method.period.dolphindb'\n },\n 2: {\n name: 'keyword.operator.prototype.dolphindb'\n },\n 3: {\n patterns: [\n {\n include: '#method_name'\n }\n ]\n }\n },\n end: '(?<=\\\\))',\n name: 'meta.method-call.dolphindb',\n patterns: [\n {\n include: '#arguments'\n }\n ]\n }\n ]\n },\n \n method_name: {\n patterns: [\n {\n match: '[a-zA-Z_$][\\\\w$]*',\n name: 'entity.name.function.dolphindb'\n },\n {\n match: '\\\\d[\\\\w$]*',\n name: 'invalid.illegal.identifier.dolphindb'\n }\n ]\n },\n \n operator: {\n patterns: [\n {\n match: '<<|>>',\n name: 'keyword.operator.bitwise.shift.dolphindb'\n },\n {\n match: '!=|<=|>=|==|>|<',\n name: 'keyword.operator.comparison.dolphindb'\n },\n {\n match: '<-|->',\n name: 'keyword.operator.join.dolphindb'\n },\n {\n match: '&&|!|\\\\|\\\\|',\n name: 'keyword.operator.logical.dolphindb'\n },\n {\n match: '&|\\\\||\\\\^',\n name: 'keyword.operator.bitwise.dolphindb'\n },\n {\n match: '\\\\.\\\\.',\n name: 'keyword.operator.splat.dolphindb'\n },\n {\n match: '\\\\?',\n name: 'keyword.operator.existential.dolphindb'\n },\n {\n match: '/|<-|%|\\\\*|/|-|\\\\$|\\\\+',\n name: 'keyword.operator.dolphindb'\n },\n {\n match: '([a-zA-Z$_][\\\\w$]*)?\\\\s*(=|:(?!:))(?![>=])',\n captures: {\n 1: {\n name: 'variable.assignment.dolphindb'\n },\n 2: {\n name: 'keyword.operator.assignment.dolphindb'\n }\n }\n }\n ]\n },\n \n property: {\n patterns: [\n {\n match: '(?:(\\\\.)|(::))\\\\s*([A-Z][A-Z0-9_$]*\\\\b\\\\$*)(?=\\\\s*\\\\??(\\\\.\\\\s*[a-zA-Z_$]\\\\w*|::))',\n captures: {\n 1: {\n name: 'punctuation.separator.property.period.dolphindb'\n },\n 2: {\n name: 'keyword.operator.prototype.dolphindb'\n },\n 3: {\n name: 'constant.other.object.property.dolphindb'\n }\n }\n },\n {\n match: '(?:(\\\\.)|(::))\\\\s*(\\\\$*[a-zA-Z_$][\\\\w$]*)(?=\\\\s*\\\\??(\\\\.\\\\s*[a-zA-Z_$]\\\\w*|::))',\n captures: {\n 1: {\n name: 'punctuation.separator.property.period.dolphindb'\n },\n 2: {\n name: 'keyword.operator.prototype.dolphindb'\n },\n 3: {\n name: 'variable.other.object.property.dolphindb'\n }\n }\n },\n {\n match: '(?:(\\\\.)|(::))\\\\s*([A-Z][A-Z0-9_$]*\\\\b\\\\$*)',\n captures: {\n 1: {\n name: 'punctuation.separator.property.period.dolphindb'\n },\n 2: {\n name: 'keyword.operator.prototype.dolphindb'\n },\n 3: {\n name: 'constant.other.property.dolphindb'\n }\n }\n },\n {\n match: '(?:(\\\\.)|(::))\\\\s*(\\\\$*[a-zA-Z_$][\\\\w$]*)',\n captures: {\n 1: {\n name: 'punctuation.separator.property.period.dolphindb'\n },\n 2: {\n name: 'keyword.operator.prototype.dolphindb'\n },\n 3: {\n name: 'variable.other.property.dolphindb'\n }\n }\n },\n {\n match: '(?:(\\\\.)|(::))\\\\s*([0-9][\\\\w$]*)',\n captures: {\n 1: {\n name: 'punctuation.separator.property.period.dolphindb'\n },\n 2: {\n name: 'keyword.operator.prototype.dolphindb'\n },\n 3: {\n name: 'invalid.illegal.identifier.dolphindb'\n }\n }\n }\n ]\n }\n }\n} as Block\n\n\ninterface Block {\n patterns: Pattern[]\n repository?: Record<string, Pattern | Block>\n}\n\ntype Pattern = Match | Include | Block\n\ntype Match = MatchOne | MatchBeginEnd\n\ninterface MatchOne {\n /** a single-line regular expression */\n match: RegExp | string\n \n /** This is the scope that will be applied to the matched text */\n name?: string\n \n /** This use of the captures > patterns structure is extremely important. \n Without it, a stretch of text matched by a match rule is considered finished, and \n TextMate’s search proceeds to the rest of the line after the matched text. \n With it, the stretch of matched text itself becomes a candidate for further matches. \n */\n captures?: Captures\n}\n\ninterface MatchBeginEnd {\n begin: RegExp | string\n \n end: RegExp | string\n \n /** This is the scope (or an expression evaluating to a scope) to be applied to \n the entire matched stretch(es) of text starting at the start of the begin match.\n */\n name?: string\n \n /** This is the scope to be applied to what’s between the begin match and the end match (or the end of the document). */\n contentName?: string\n \n /** it applies to the region between the begin and end matches. */\n patterns?: Pattern[]\n \n beginCaptures?: Captures\n \n endCaptures?: Captures\n \n whileCaptures?: Captures\n \n /** If the name or number of the matched group happens to be the same for both the begin pattern and the other pattern, \n you can (if appropriate) use captures as a shorthand to avoid saying the same thing twice.\n */\n captures?: Captures\n \n applyEndPatternLast?: 1\n}\n\ninterface Include {\n include: string\n}\n\ntype Captures = Record<string | number, {\n /** This is the scope that will be assigned to the matched group text. */\n name?: string\n \n /** This is a list of match rules to be sought within the matched group text \n — thus permitting the search for matches to continue inside the matched text.\n */\n patterns?: Pattern[]\n}>\n\n"]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dolphindb",
|
|
3
3
|
"description": "DolphinDB JavaScript API",
|
|
4
|
-
"version": "2.0.
|
|
4
|
+
"version": "2.0.967",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./index.js",
|
|
7
7
|
"browser": "./browser.js",
|
|
@@ -25,9 +25,9 @@
|
|
|
25
25
|
"JavaScript"
|
|
26
26
|
],
|
|
27
27
|
"devDependencies": {
|
|
28
|
-
"@types/node": "^20.1.
|
|
29
|
-
"@typescript-eslint/eslint-plugin": "^5.59.
|
|
30
|
-
"@typescript-eslint/parser": "^5.59.
|
|
28
|
+
"@types/node": "^20.1.5",
|
|
29
|
+
"@typescript-eslint/eslint-plugin": "^5.59.6",
|
|
30
|
+
"@typescript-eslint/parser": "^5.59.6",
|
|
31
31
|
"eslint": "^8.40.0",
|
|
32
32
|
"ts-node": "^10.9.1",
|
|
33
33
|
"typescript": "^5.0.4"
|
package/.eslintrc.json
DELETED
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "./.eslintrc.schema.json",
|
|
3
|
-
|
|
4
|
-
"root": true,
|
|
5
|
-
|
|
6
|
-
"ignorePatterns": ["**/*.d.ts"],
|
|
7
|
-
|
|
8
|
-
"parser": "@typescript-eslint/parser",
|
|
9
|
-
"parserOptions": {
|
|
10
|
-
"ecmaVersion": "latest",
|
|
11
|
-
"sourceType": "module",
|
|
12
|
-
"project": "./tsconfig.json",
|
|
13
|
-
"ecmaFeatures": {
|
|
14
|
-
"jsx": true
|
|
15
|
-
}
|
|
16
|
-
},
|
|
17
|
-
|
|
18
|
-
"plugins": [
|
|
19
|
-
"@typescript-eslint"
|
|
20
|
-
],
|
|
21
|
-
|
|
22
|
-
"settings": {
|
|
23
|
-
"react": {
|
|
24
|
-
"version": "detect"
|
|
25
|
-
}
|
|
26
|
-
},
|
|
27
|
-
|
|
28
|
-
"env": {
|
|
29
|
-
"node": true,
|
|
30
|
-
"browser": true
|
|
31
|
-
},
|
|
32
|
-
|
|
33
|
-
"rules": {
|
|
34
|
-
"@typescript-eslint/semi": ["error", "never"],
|
|
35
|
-
"@typescript-eslint/no-extra-semi": "error",
|
|
36
|
-
"semi-style": ["error", "first"],
|
|
37
|
-
|
|
38
|
-
// 使用 ===
|
|
39
|
-
"eqeqeq": "error",
|
|
40
|
-
|
|
41
|
-
// 父类尽量返回 this 类型
|
|
42
|
-
"@typescript-eslint/prefer-return-this-type": "error",
|
|
43
|
-
|
|
44
|
-
// 尽量使用 . 访问属性而不是 []
|
|
45
|
-
"@typescript-eslint/dot-notation": "error",
|
|
46
|
-
|
|
47
|
-
// 必须 throw Error
|
|
48
|
-
"@typescript-eslint/no-throw-literal": "error",
|
|
49
|
-
|
|
50
|
-
// ------------ async
|
|
51
|
-
// 返回 Promise 的函数一定要标记为 async 函数
|
|
52
|
-
"@typescript-eslint/promise-function-async": "error",
|
|
53
|
-
|
|
54
|
-
// 不要 return await promise, 直接 return promise, 除非外面有 try catch
|
|
55
|
-
"@typescript-eslint/return-await": "error",
|
|
56
|
-
|
|
57
|
-
// ------------ 括号
|
|
58
|
-
|
|
59
|
-
// a => { } 而不是 (a) => { }
|
|
60
|
-
"arrow-parens": ["error", "as-needed", { "requireForBlockBody": false }],
|
|
61
|
-
|
|
62
|
-
// 不要多余的大括号
|
|
63
|
-
// if (true)
|
|
64
|
-
// console.log()
|
|
65
|
-
"curly": ["error", "multi"],
|
|
66
|
-
|
|
67
|
-
// if 的 body 必须换行
|
|
68
|
-
"nonblock-statement-body-position": ["error", "below"],
|
|
69
|
-
|
|
70
|
-
// ------------ 空格
|
|
71
|
-
|
|
72
|
-
// { a, b } 这样的对象,大括号里面要有空格
|
|
73
|
-
"@typescript-eslint/object-curly-spacing": ["error", "always"],
|
|
74
|
-
|
|
75
|
-
// [a, b, c]
|
|
76
|
-
"@typescript-eslint/comma-spacing": "error",
|
|
77
|
-
|
|
78
|
-
// foo()
|
|
79
|
-
"@typescript-eslint/func-call-spacing": "error",
|
|
80
|
-
|
|
81
|
-
// a => { } 中箭头左右两边空格
|
|
82
|
-
"arrow-spacing": ["error"],
|
|
83
|
-
|
|
84
|
-
// 注释双斜杠后面要有空格
|
|
85
|
-
"spaced-comment": ["error", "always", { "markers": ["/"] }],
|
|
86
|
-
|
|
87
|
-
// 函数声明中,名称后面要有空格
|
|
88
|
-
"@typescript-eslint/space-before-function-paren": "error",
|
|
89
|
-
|
|
90
|
-
// { return true } 这样的 block 大括号里面要有空格
|
|
91
|
-
"block-spacing": ["error", "always"],
|
|
92
|
-
|
|
93
|
-
// aaa: 123
|
|
94
|
-
"@typescript-eslint/key-spacing": ["error", { "beforeColon": false, "afterColon": true, "mode": "minimum" }],
|
|
95
|
-
|
|
96
|
-
// aaa: string
|
|
97
|
-
"@typescript-eslint/type-annotation-spacing": ["error"],
|
|
98
|
-
|
|
99
|
-
// if ()
|
|
100
|
-
"@typescript-eslint/keyword-spacing": ["error", { "before": true, "after": true }],
|
|
101
|
-
|
|
102
|
-
// if (1) { }
|
|
103
|
-
"@typescript-eslint/space-before-blocks": "error",
|
|
104
|
-
|
|
105
|
-
// case 1: ...
|
|
106
|
-
"switch-colon-spacing": "error",
|
|
107
|
-
|
|
108
|
-
// a + b
|
|
109
|
-
"@typescript-eslint/space-infix-ops": "error",
|
|
110
|
-
|
|
111
|
-
// 不允许使用 tab
|
|
112
|
-
"no-tabs": "error",
|
|
113
|
-
|
|
114
|
-
// 使用 \n 换行
|
|
115
|
-
"linebreak-style": ["error", "unix"],
|
|
116
|
-
|
|
117
|
-
// 文件以 \n 结尾
|
|
118
|
-
"eol-last": ["error", "always"],
|
|
119
|
-
|
|
120
|
-
// ------------ 引号
|
|
121
|
-
|
|
122
|
-
// 用单引号
|
|
123
|
-
"jsx-quotes": ["error", "prefer-single"],
|
|
124
|
-
|
|
125
|
-
// 用单引号
|
|
126
|
-
"quotes": ["error", "single", { "avoidEscape": true, "allowTemplateLiterals": false }],
|
|
127
|
-
|
|
128
|
-
// 不要冗余的引号包裹属性
|
|
129
|
-
"quote-props": ["error", "as-needed", { "keywords": false, "unnecessary": true }],
|
|
130
|
-
|
|
131
|
-
// ------------ 其它
|
|
132
|
-
// 单行类型声明用 `,` 分割,多行类型声明结尾不要加分号
|
|
133
|
-
"@typescript-eslint/member-delimiter-style": ["error", {
|
|
134
|
-
"multiline": {
|
|
135
|
-
"delimiter": "none",
|
|
136
|
-
"requireLast": false
|
|
137
|
-
},
|
|
138
|
-
"singleline": {
|
|
139
|
-
"delimiter": "comma",
|
|
140
|
-
"requireLast": false
|
|
141
|
-
}
|
|
142
|
-
}],
|
|
143
|
-
|
|
144
|
-
"@typescript-eslint/prefer-includes": "error",
|
|
145
|
-
|
|
146
|
-
"@typescript-eslint/prefer-regexp-exec": "error"
|
|
147
|
-
}
|
|
148
|
-
}
|