feat(tsl-api-reference): index class and unit APIs

Migrate reference pages to declaration-line storage and rebuild the
13-column index.

Add qualified member lookup plus regression and end-to-end coverage.
This commit is contained in:
csh
2026-07-29 15:47:46 +08:00
parent 9edc8fc868
commit 13be5ea0aa
239 changed files with 39157 additions and 12846 deletions
@@ -2,24 +2,32 @@
## `userName()`
声明:function
返回当前的用户。
返回:string
## `functionType()`
声明:function
当前运行的函数的类型。即返回当前函数是公用函数,还是用户函数。
返回:integer
## `functionName()`
声明:function
当前运行的函数的名称
返回:string
## `userConfig(section, ret_type)`
声明:function
返回用户的配置信息,Section为配置名,RetType用于指定返回的类型,0为字符串,1为数字,2为日期类型。注:此函数为特殊用途。
| 参数 | 类型 | 说明 |
@@ -31,6 +39,8 @@
## `sudo(uid, exp)`
声明:function
以UID指定的用户执行EXP表达式,该EXP为隐式表达式,例如SUDO(“system”,DoSomeThing()),如用户需要用显式的表达式,采用SUDO(UID,Eval(Exp))即可。SUDO和User不一样,SUDO需要有权限,而且SUDO是完全以指定用户来执行,访问的数据资源等均以指定的UID来运行。与SetUID不一样的地方是SUDO执行完EXP后用户ID便恢复成原始的ID。
| 参数 | 类型 | 说明 |
@@ -2,7 +2,9 @@
## 运行时
### `setPrecision(number, precision)`
## `setPrecision(number, precision)`
声明:function
从指定精度四舍五入截断小数点位数,返回number的保留小数点Precision位后的值
@@ -13,13 +15,15 @@
返回:real
#### 示例
### 示例
```tsl
return setPrecision(123.4567, 3); // 返回值为保留3位小数点后的实数:123.457。
```
### `toStm(v, gtype, stm_type, p_n)`
## `toStm(v, gtype, stm_type, p_n)`
声明:function
转换成为STM流数据。可以通过stmType参数控制是否转换为新流模式或超大流新流模式,新的stm流占用空间更少,访问效率更高。
@@ -32,7 +36,7 @@ return setPrecision(123.4567, 3); // 返回值为保留3位小数点后的实数
返回:binary
#### 示例
### 示例
```tsl
return toStm(array(1, 23, 4, 5, 6, 7,)); // 返回以.stm为后缀名的二进制文件。
@@ -43,7 +47,9 @@ return stm(s);
// 返回如下:
```
### `toStn(v, n)`
## `toStn(v, n)`
声明:function
转换成为STN字符串。小数位四舍五入,尾数是五就进一。
@@ -54,7 +60,7 @@ return stm(s);
返回:string
#### 示例
### 示例
范例一:
@@ -68,7 +74,9 @@ return toStn(12345); // 返回值为字符串:’12345’。
return toStn(1.2345, 2); // 返回值为字符串:’1.23’。
```
### `exportCsv(data, csv_str, include_index, include_header)`
## `exportCsv(data, csv_str, include_index, include_header)`
声明:function
将指定数组Data转换为csv格式字符串并存储在csvStr参数中。仅支持一维及二维数组的转换。和ExportCsvne的区别:在处理浮点数据时,ExportCsv的结果会输出为1E15等格式。
@@ -81,7 +89,7 @@ return toStn(1.2345, 2); // 返回值为字符串:’1.23’。
返回:bool
#### 示例
### 示例
范例01:一维数组转换成csv格式字符串(含大数量级数据)
@@ -127,7 +135,9 @@ else return ret;
// 示例未提供可直接输出的返回表达式。
```
### `setProfiler(flag)`
## `setProfiler(flag)`
声明:function
设置需要记录的优化信息(当设置了记录优化信息的时候,运行速度可能会比正常运行慢很多)并返回设置前的状态值,如果设置了记录优化信息,在平台运行的模型结束的时候会在终端打开优化信息的窗口,用户也可以调用GetProfilerInfo来手动获得优化信息。
@@ -137,7 +147,7 @@ else return ret;
返回:integer
#### 示例
### 示例
范例011+2+4的优化信息返回
@@ -166,7 +176,9 @@ return 1;
// 优化信息如:
```
### `randomfrom(avalues)`
## `randomfrom(avalues)`
声明:function
返回一个随机的数组元素,这个数组是由参数Avalue传递进来的。
@@ -176,7 +188,7 @@ return 1;
返回:any
#### 示例
### 示例
```tsl
a := array('a', 'b', 'c', 'd', 'e', 'f');
@@ -184,26 +196,32 @@ return randomFrom(a);
// 返回值为随机返回A字符串中一个字符:’b’。
```
### `getSysParams()`
## `getSysParams()`
声明:function
取出所有系统参数的值。
返回:array
### `tsAppServerName()`
## `tsAppServerName()`
声明:function
返回平台设置的名字,如果没有设置,默认是ip:进程路径。
返回:string
#### 示例
### 示例
```tsl
return tsAppServerName();
// 输出:192.168.101.26:z:\server\bin\exec64.exe
```
### `call(func_name, p1, pn)`
## `call(func_name, p1, pn)`
声明:function
根据名称或者函数指针调用指定的函数,后面带的参数将自动送入该函数。
@@ -215,7 +233,7 @@ return tsAppServerName();
返回:any
#### 示例
### 示例
```tsl
// 采用字符串方式来调用函数
@@ -227,7 +245,9 @@ return call(f, 20140101);
// 返回41640
```
### `toXml(v)`
## `toXml(v)`
声明:function
转换成为XML字符串。
@@ -237,7 +257,7 @@ return call(f, 20140101);
返回:string
#### 示例
### 示例
```tsl
return toXml('this is XML document');
@@ -248,7 +268,9 @@ return toXml('this is XML document');
// 仅windows中支持,Linux中暂不支持。
```
### `xml(v)`
## `xml(v)`
声明:function
把XML串转换为任意类型。
@@ -258,7 +280,7 @@ return toXml('this is XML document');
返回:any
#### 示例
### 示例
```tsl
return xml('<?xml version="1.0" encoding="GB2312"?>
@@ -268,7 +290,9 @@ return xml('<?xml version="1.0" encoding="GB2312"?>
// 仅windows中支持,Linux中暂不支持。
```
### `callInArray(func_name, param_content)`
## `callInArray(func_name, param_content)`
声明:function
根据名称或者函数指针调用指定的函数,将参数放入一个数组中送入该函数,不支持变参。另外,天软的函数指针可以用thisfunction()获得。该函数与call函数功能类似,注意两个函数设置参数的区别。Call函数直接列举,CallInArray函数将调用的函数的参数放在Array中。
@@ -279,7 +303,7 @@ return xml('<?xml version="1.0" encoding="GB2312"?>
返回:any
#### 示例
### 示例
范例1:根据函数名称调用,第一个参数为函数名称
@@ -328,13 +352,15 @@ return callInArray("CCC", array("b": 1, "d": 4));
// 上面示例中,只对参数b与d进行了传参,其它两参数没有进行传值,所以是nil。
```
### `tsAppServer()`
## `tsAppServer()`
声明:function
获得当前运行的模型所在的运算服务器的标识。
返回:string
#### 示例
### 示例
```tsl
a := rand(10, 10);
@@ -342,7 +368,9 @@ return tsAppServer();
// 输出:192.168.101.45:3328(Z:\server\bin5)
```
### `dupValue(value)`
## `dupValue(value)`
声明:function
返回一份value的复制值,一般无需要使用,特别用于不需要变参的函数调用。
@@ -352,7 +380,7 @@ return tsAppServer();
返回:any
#### 示例
### 示例
```tsl
// 主函数
@@ -375,7 +403,9 @@ end;
// 由test1执行出来的结果可以知道,a变量,由于使用了dupValue复制值,虽然在子函数test2中改变了其值,但在主函数中的a变量仍然没变。而b变量则发生了改变。
```
### `ifThen(avalue, atrue, a_false)`
## `ifThen(avalue, atrue, a_false)`
声明:function
如果Avalue值为真,返回参数Atrue,否则返回参数Afalse
@@ -387,7 +417,7 @@ end;
返回:any
#### 示例
### 示例
```tsl
a := 1;
@@ -396,7 +426,9 @@ return ifThen(a>b, a, b);
// 输出:2。
```
### `integer(value)`
## `integer(value)`
声明:function
强制成整数,类型转换,对有些必需要指定类型的函数有用,如format
@@ -406,13 +438,15 @@ return ifThen(a>b, a, b);
返回:integer
#### 示例
### 示例
```tsl
return integer(123.456); // 返回值为整型数据:123。
```
### `int64(value)`
## `int64(value)`
声明:function
强制成整数,类型转换,对有些必需要指定类型的函数有用,如format
@@ -422,13 +456,15 @@ return integer(123.456); // 返回值为整型数据:123。
返回:int64
#### 示例
### 示例
```tsl
return int64(123); // 返回值为64位整型数据:123。
```
### `real(value)`
## `real(value)`
声明:function
强制为实数,类型转换,对有些必需要指定类型的函数有用,如format
@@ -438,13 +474,15 @@ return int64(123); // 返回值为64位整型数据:123。
返回:real
#### 示例
### 示例
```tsl
return real(123); // 返回值为实数数据:123.00
```
### `wideString(value)`
## `wideString(value)`
声明:function
将字符串转为Unicode字符串,或者强制让二进制为Unicode字符串。
@@ -454,14 +492,16 @@ return real(123); // 返回值为实数数据:123.00
返回:widestring
#### 示例
### 示例
```tsl
return wideString('abcd');
// 返回值为Unicode字符串:Labcd’。
```
### `binary(value)`
## `binary(value)`
声明:function
强制把字符串或者Unicode字符串转化为二进制流,对有些必需要指定类型的函数有用
@@ -471,13 +511,15 @@ return wideString('abcd');
返回:binary
#### 示例
### 示例
```tsl
return binary('111111'); // 返回值为二进制流。
```
### `stn(v)`
## `stn(v)`
声明:function
把STN串转换为任意类型。
@@ -487,25 +529,33 @@ return binary('111111'); // 返回值为二进制流。
返回:any
### `randomize()`
## `randomize()`
声明:function
已废弃函数。
返回:any
### `random()`
## `random()`
声明:function
(参考文档未提供简述。)
返回:real
### `tslfilename()`
## `tslfilename()`
声明:function
获取正在执行的 `.tsl` 主脚本完整路径。
返回:string
### `sysgettsllibpath()`
## `sysgettsllibpath()`
声明:function
获取当前函数库查找路径。
@@ -513,7 +563,9 @@ return binary('111111'); // 返回值为二进制流。
## 错误与断言函数
### `getProfilerInfo(clear)`
## `getProfilerInfo(clear)`
声明:function
获得记录的优化信息。
@@ -523,7 +575,7 @@ return binary('111111'); // 返回值为二进制流。
返回:array
#### 示例
### 示例
范例01:不弹出profiler窗口
@@ -567,7 +619,9 @@ return b;
// 输出:返回程序结果的同时,另外弹出profiler窗口
```
### `importCsv(csv_str, data, include_index, include_header, single_arr)`
## `importCsv(csv_str, data, include_index, include_header, single_arr)`
声明:function
将指定csv格式字符串csvStr转换为数组,并存储在Data参数中。
@@ -581,7 +635,7 @@ return b;
返回:bool
#### 示例
### 示例
范例01:将指定csv格式字符串转换成二维数组
@@ -609,7 +663,9 @@ else return ret;
// function:__main__:line 4:instruction:usercall: function execute error
```
### `stm(v)`
## `stm(v)`
声明:function
把STM流转换为任意类型。
@@ -619,7 +675,9 @@ else return ret;
返回:any
### `getGlobalCache(name, out_value)`
## `getGlobalCache(name, out_value)`
声明:function
按键读取全局缓存。