文章目录
- 第十五章 ObjectScript 系统标志和限定符 (qspec) - 标志的限定符
- UnitTest限定符
- 标志的限定符
- 关于标志和限定符的帮助
- 控制默认值
- [qspec 的处理顺序](#qspec 的处理顺序)
第十五章 ObjectScript 系统标志和限定符 (qspec) - 标志的限定符
UnitTest限定符
Flag | Meaning | Default |
---|---|---|
/autoload |
指定要自动加载的目录。 | --- |
/cleanup |
在单元测试完成时清除Global 。默认情况下,不清理Global 。即使设置了Global ,也不会清理Global 。 |
0 |
/debug |
如果断言失败,则导致断言中断。 | 0 |
/delete |
确定是否应该删除加载的类。 | 1 |
/display |
/displaylog 和/displayerror 的别名限定符。 |
--- |
/displayerror |
显示错误信息。 | 1 |
/displaylog |
显示日志信息。 | 1 |
/findleakedvariables |
当启用时,在运行测试之前记录当前在流程中设置的公共变量,然后与测试完成后设置的变量进行比较。除了一组预先确定的已知上下文和输出变量(如SQLCODE )之外,任何新定义的变量及其值都将作为测试失败报告。 |
0 |
/load |
确定是否应该装入类;如果没有,则只从目录中获取类名。 | 1 |
/loadudl |
加载IDE 生成的UDL 文件。当设置时,加载.cls, .mac, .int, and .inc files. 。/loadudl 和/loadxml 可以用来限制加载的文件类型;缺省情况下,加载所有文件。UDL文件总是以UTF8格式加载,以便正确加载Unicode字符。 |
1 |
/loadxml |
加载xml格式的源文件。设置后,加载.xml 文件。/loadudl 和/loadxml 可以用来限制加载的文件类型;缺省情况下,加载所有文件。 |
1 |
/recursive |
确定子目录中的测试是否应递归运行。 | 1 |
/run |
确定是否应该运行测试。 | 1 |
标志的限定符
下表给出了现有的标志和等价的限定符。一些标志映射到多个限定符,并且在用于不同目的时具有不同的含义。
Flag | Group | Qualifier | Default |
---|---|---|---|
b | Compiler | /subclasses | 0 |
c | Compiler | /compile |
0 |
d | Compiler | /displayerror |
1 |
d | Compiler | /displaylog |
1 |
d | UnitTest | /displayerror |
1 |
d | UnitTest | /displaylog |
1 |
e | Compiler | /deleteextent |
0 |
i | Compiler | /checkschema |
1 |
k | Compiler | /keepsource |
0 |
l | Compiler | /lock |
1 |
p | Compiler | /percent |
0 |
r | Compiler | /predecessorclasses |
0 |
r | Compiler | /includesubpackages |
1 |
s | Compiler | /system |
0 |
y | Compiler | /relatedclasses |
0 |
b | Export | /subclasses |
0 |
d | Export | /displayerror |
1 |
d | Export | /displaylog |
1 |
g | Export | /exportselectivity |
0 |
p | Export | /percent |
0 |
r | Export | /includesubpackages |
1 |
r | Export | /recursive |
1 |
r | Export | /predecessorclasses |
0 |
s | Export | /system |
0 |
y | Export | /relatedclasses |
0 |
h | ShowClassAndObject | /hidden |
0 |
s | ShowClassAndObject | /system |
0 |
关于标志和限定符的帮助
要查看标志的可用设置,使用命令:
java
Do $system.OBJ.ShowFlags()
这会产生如下输出:
java
See $system.OBJ.ShowQualifiers() for comprehensive list of qualifiers as flags have been superseded
by qualifiers
b - Include sub classes.
c - Compile. Compile the class definition(s) after loading.
d - Display. This flag is set by default.
...
Default flags for this namespace
You may change the default flags with the SetFlags(flags,system) classmethod.
类似地,要查看限定符的可用设置,使用命令:
java
Do $system.OBJ.ShowQualifiers()
这会产生如下输出:
java
Name: /checkschema
Description: Validate imported XML files against the schema definition.
Type: logical
Flag: i
Default Value: 1
Name: /checksysutd
Description: Check system classes for up-to-dateness
Type: logical
Default Value: 0
Name: /checkuptodate
Description: Skip classes or expanded classes that are up-to-date.
Type: enum
Flag: ll
Enum List: none,all,expandedonly,0,1
Default Value: expandedonly
Present Value: all
Negated Value: none
...
这些方法还分别报告当前标志和限定符。
控制默认值
此页面列出了标志和限定符的默认值(如果适用)。可以使用 %SYSTEM.OBJ
的 SetFlags()
方法覆盖默认标志。同样,可以使用 SetQualifiers()
方法为当前命名空间(默认)或系统范围设置限定符。
qspec 的处理顺序
qspec
是从左到右处理的。给定标志或限定符的设置将覆盖当前设置,无论它来自环境默认值,还是来自 qspec
中较早出现的设置。
请注意,由于标志必须列在任何限定符的左侧,因此限定符设置始终会覆盖任何标志设置。