在控制流中§
有关return的更多信息,请参阅上下文中的主要文档
子例程 return
将停止子例程或方法的执行,运行所有相关的 phaser 并将给定的返回值提供给调用者。默认返回值为 Nil
。如果提供了 return 类型约束,则将对其进行检查,除非返回值为 Nil
。如果类型检查失败,则抛出异常 X::TypeCheck::Return
。如果它通过了控制异常,则可以使用 CONTROL 捕获它。
块中的任何 return
都绑定到该块外部词法范围内的第一个 Routine
,无论嵌套多深。请注意,包根目录中的 return
在运行时会失败。在延迟评估的块(例如,在 map
内部)中,return
可能会发现在执行块时外部词法例程已经消失。几乎在任何情况下,last
都是更好的选择。有关如何处理和生成返回值的更多信息,请查看 函数文档。