• line编译指示

    line编译指示

    line pragma可用于影响带注释语句的行信息,如堆栈回溯中所示:

    1. template myassert*(cond: untyped, msg = "") =
    2. if not cond:
    3. # 更改'raise'语句的运行时行信息:
    4. {.line: instantiationInfo().}:
    5. raise newException(EAssertionFailed, msg)

    如果 line 编译指示与参数一起使用,则参数需要是 tuple[filename: string, line: int] 。 如果在没有参数的情况下使用它,则使用 system.InstantiationInfo()