When nimvm 语句
nimvm 是一个特殊标识符, 可用 when nimvm 语句表达式来判断路径,编译时或可执行文件之间执行。
示例:
proc someProcThatMayRunInCompileTime(): bool =
when nimvm:
# 编译时采用此分支.
result = true
else:
# 可执行文件中采用此分支.
result = false
const ctValue = someProcThatMayRunInCompileTime()
let rtValue = someProcThatMayRunInCompileTime()
assert(ctValue == true)
assert(rtValue == false)
when nimvm 语句必须满足以下要求:
- 表达式必须是 nimvm ,不允许使用的复杂表达式。
- 不得含有 elif 分支。
- 必须含有 else 分支。
- 分支中的代码不能影响 when nimvm 语句之后代码的语义,比如不能定义后续代码中使用的标识符。
当前内容版权归 vectorworkshopbaoerjie 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 vectorworkshopbaoerjie .