在 IO::Path 中§

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

method add(IO::Path:D: Str() $what --> IO::Path:D)

将路径片段连接到调用者并返回生成的 IO::Path。如果将 ../ 添加到以文件结尾的路径,您可能需要调用 resolve 以使生成的路径可被其他 IO::Path 方法(如 diropen)访问。另请参阅 siblingparent

"foo/bar".IO.mkdir;
"foo/bar".IO.add("meow")    .resolve.relative.say# OUTPUT: «foo/bar/meow␤» 
"foo/bar".IO.add("/meow")   .resolve.relative.say# OUTPUT: «foo/bar/meow␤» 
"foo/bar".IO.add("meow.txt").resolve.relative.say# OUTPUT: «foo/bar/meow.txt␤» 
"foo/bar".IO.add("../meow".resolve.relative.say# OUTPUT: «foo/meow␤» 
"foo/bar".IO.add("../../")  .resolve.relative.say# OUTPUT: «.␤» 
 
method add(IO::Path:D: *@parts --> IO::Path:D)

从 Rakudo 编译器的 2021.07 版本开始,还可以指定要添加到路径的多个部分。

"foo".IO.add(<bar baz>).resolve.relative.say;      # OUTPUT: «foo/bar/baz␤»

在 BagHash 中§

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

method add(BagHash: \to-add*%_ --> Nil)

to-add 是单个项目时,add 会将其插入 BagHash 中,如果它已经存在,则将其权重增加 1。当 to-addListArraySeq 或任何其他执行 Iterator 角色的类型时,add 会将 Iterator 的每个元素插入到 SetHash 中,或将每个元素的权重增加 1。

注意: 在 2020.02 版本中添加。