is Allomorph is Rat
RatStr
是一个双值类型,是 Allomorph
(因此是 Str
)和 Rat
的子类。
有关更多详细信息,请参阅 Allomorph
。
my = <42.1>;say .^name; # OUTPUT: «RatStr»my Rat = ; # OK!my Str = ; # OK!# ∈ operator cares about object identitysay 42.1 ∈ <42.1 55 1>; # OUTPUT: «False»
方法§
方法 new§
method new(Rat , Str )
构造函数需要 Rat
和 Str
值,直接构造时,值可以是任何需要的值
my = RatStr.new(42.1, "forty two and a bit");say +; # OUTPUT: «42.1»say ~; # OUTPUT: «"forty two and a bit"»
方法 Capture§
method Capture(RatStr: --> Capture)
等同于 Mu.Capture
。
方法 Numeric§
multi method Numeric(RatStr: --> Rat)multi method Numeric(RatStr: --> Rat)
:D
变体返回调用者的数字部分。:U
变体发出有关在数字上下文中使用未初始化值的警告,然后返回值 0.0
。
方法 Rat§
method Rat
返回 RatStr
的 Rat
值。
方法 Real§
multi method Real(Real: --> Rat)multi method Real(Real: --> Rat)
:D
变体返回调用者的数字部分。:U
变体发出有关在数字上下文中使用未初始化值的警告,然后返回值 0.0
。
运算符§
中缀 ===
§
multi infix:<===>(RatStr , RatStr )
RatStr
值同一性运算符。如果 $a
和 $b
的 Rat
值 相同,并且它们的 Str
值也 相同,则返回 True
。否则返回 False
。