在 Allomorph 中§

参阅方法 WHICH的上下文中的主要文档 in context

multi method WHICH(Allomorph:D:)

返回类型为 ValueObjAt 的对象,该对象唯一标识该对象。

my $f = <42.1e0>;
say $f.WHICH;     # OUTPUT: «NumStr|Num|42.1|Str|42.1e0␤»

在 Range 中§

参阅方法 WHICH的上下文中的主要文档 in context

multi method WHICH (Range:D:)

这将返回一个标识对象的字符串。该字符串由实例的类型(Range)以及 minmax 属性组成

say (1..2).WHICH # OUTPUT: «Range|1..2␤»

在 Mu 中§

参阅方法 WHICH的上下文中的主要文档 in context

multi method WHICH(--> ObjAt:D)

返回类型为 ObjAt 的对象,该对象唯一标识该对象。值类型会覆盖此方法,该方法可确保两个等效对象从 WHICH 返回相同返回值。

say 42.WHICH eq 42.WHICH;       # OUTPUT: «True␤»

在 IO::Special 中§

参阅方法 WHICH的上下文中的主要文档 in context

method WHICH(IO::Special:D: --> Str)

这将返回一个标识对象的字符串。该字符串由实例的类型(IO::Special)以及 what 属性组成

$*IN.path.what;  # OUTPUT: «<STDIN>␤» 
$*IN.path.WHICH# OUTPUT: «IO::Special<STDIN>␤»