gpt4 book ai didi

exception-handling - 处理无效的文件句柄(也可能是其他无效对象)

转载 作者:行者123 更新时间:2023-12-04 00:12:47 29 4
gpt4 key购买 nike

正如汤姆·布劳德 (Tom Browder) 在 this issue 中指出的那样, $*ARGFILES dynamic variable如果命令行中提到的任何文件不存在,则可能包含无效的文件句柄。

for $*ARGFILES.handles -> $fh {
say $fh;
}

将失败和 X::AdHoc异常(exception)(这也应该改进):
Failed to open file /home/jmerelo/Code/perl6/my-perl6-examples/args/no-file: No such file or directory

一旦将无效的文件句柄用于任何事情,问题就会发生。有没有办法在发生异常之前检查文件句柄是否有效?

最佳答案

您可以检查是否是 Failure通过检查真实性或定义性 没有 Failure throw :

for $*ARGFILES.handles -> $fh {
say $fh if $fh; # check truthiness
.say with $fh; # check definedness + topicalization
}

如果你还想扔 Exception Failure包含,那么您只需 .throw它。

关于exception-handling - 处理无效的文件句柄(也可能是其他无效对象),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54501546/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com