6.20. kink/REF¶
6.20.1. ref型¶
refは値を書き込み、読み込みできる抽象型である。
6.20.1.1. Ref.load¶
loadはRefが持つ現在の値を戻す。
loadは例外を投げてはならない。
6.20.1.2. Ref <- New_val¶
<- 演算子、つまりop_storeメソッドは、Refの新しい値としてNew_valを書き込む。
<- 演算子は、RefとNew_valに対する事前条件が満たされない場合、例外を投げるかもしれない。たとえば、Refがstr値だけを受け入れるが、New_valがnum値だった場合、 <- 演算子は例外を投げるかもしれない。
<- 演算子は、New_valを許容される値に調整するかもしれない。たとえば、New_valがnum値1000だが、Refが0から99のnum値だけを受け付ける場合、 <- は新しい値として99を書き込むかもしれない。
6.20.2. REF.is?(Val)¶
is?はValがref値かどうかを戻す。