在角色 IO::Socket 中§

有关例程 get,请参阅上下文中的主要文档

method get(IO::Socket:D: --> Str:D)

从套接字中读取一行输入,删除尾随换行符(由 .nl-in 设置)。如果没有更多输入,则返回 Nil

如果套接字未连接,则失败。

在 IO::Socket::INET 中§

有关方法 get,请参阅上下文中的主要文档

method get()

从套接字中读取一行并将其作为 Str 类型返回。在文件结尾 (EOF) 时返回 Nil

在 IO::CatHandle 中§

有关方法 get,请参阅上下文中的主要文档

method get(IO::CatHandle:D: --> Bool:D)

从句柄中返回一行输入,新行字符串由 $.nl-in 属性 的值定义,如果 $.chomp 属性 设置为 True,则会从行中删除该值。如果没有更多输入,则返回 Nil。当句柄处于二进制模式时调用此方法是一个错误,这会导致引发 X::IO::BinaryMode 异常。

(my $f1 = 'foo'.IO).spurt: "a\nb\nc";
(my $f2 = 'bar'.IO).spurt: "d\ne";
my $cat = IO::CatHandle.new: $f1$f2;
.say while $_ = $cat.get# OUTPUT: «a␤b␤c␤d␤e␤» 

在 IO::Handle 中§

有关例程 get,请参阅上下文中的主要文档

method get(IO::Handle:D: --> Str:D)
multi  get (IO::Handle $fh = $*ARGFILES --> Str:D)

从句柄中读取一行输入,如果句柄的 .chomp 属性设置为 True,则删除尾随换行符(由 .nl-in 设置)。如果没有更多输入,则返回 Nil。如果没有给定句柄,则子例程形式默认为 $*ARGFILES

当句柄处于二进制模式时尝试调用此方法将导致引发 X::IO::BinaryMode 异常。

$*IN.get.say;              # Read one line from the standard input 
 
my $fh = open 'filename';
$fh.get.say;               # Read one line from a file 
$fh.close;
 
say get;                   # Read one line from $*ARGFILES 

在独立例程中§

有关子例程 get,请参阅上下文中的主要文档

multi get  (IO::Handle:D $fh = $*ARGFILES{ $fh.get  }

此例程是 IO::Handle 中同名方法 的包装器。如果没有指定 Handle,则默认为 $*ARGFILES