如何以编程方式获取nim编译器版本?

Jun*_*ius 4 nim-lang

是否有任何常量变量或proc允许以字符串或数字形式访问编译器版本?

Jun*_*ius 6

版本可以作为字符串来获得经由system.NimVersion(记住,system被隐式进口):

echo NimVersion # 0.18.0
Run Code Online (Sandbox Code Playgroud)

您也可以像下面这样的数字访问其组成部分(MAJOR.MINOR.PATCH):

echo NimMajor # 0
echo NimMinor # 18
echo NimPatch # 0
Run Code Online (Sandbox Code Playgroud)

这使得与元组结合使用时,检查兼容性版本非常容易:

when (NimMajor, NimMinor, NimPatch) >= (0, 19, 0):
  echo "we're on at least Nim v0.19.0"
Run Code Online (Sandbox Code Playgroud)