6.26. kink/VARREF

6.26.1. varref型

varrefは変数参照である。変数参照は、変数を表す値である。

varrefは (Owner, Sym) の組である。ここで、Ownerは変数の所有者の値であり、Symは変数のシンボルである。

varrefはplain_paramの部分型である。参照: kink/param/PLAIN_PARAM

6.26.1.1. Varref.owner

ownerは、VarrefのOwnerを戻す。

例

6.26.1.2. Varref.sym

symは、VarrefのSymのstr値を戻す。

例

6.26.1.3. Varref <- Content

<- 演算子、つまりop_storeメソッドは、Varrefが表す変数に対して、Contentを変数の内容として変数格納操作をおこなう。

例

6.26.1.4. Varref.load

loadは、Varrefが表す変数に対して変数ロード操作を行い、変数の内容の値を戻す。

事前条件

変数の内容が空であってはならない。

例

6.26.1.5. Varref.any?

any?は、Varrefが表す変数に対して変数ロード操作を行い、変数の内容が空でないかどうかを戻す。

例

6.26.1.6. Varref.require_from(Prefix)

require_fromは、モジュールをロードして、そのモジュールを変数に格納する。

このメソッドを呼ぶことは、 `Varref <- MOD.require(Prefix + Varref.sym)` を呼ぶことと等価である。

事前条件

Prefixはstrでなければならない。

例

6.26.1.7. Varref.rest

restは、変数を元とするrest_param値を戻す。

結果のrest_paramの pass_rest(Rest_args) メソッドは、Rest_argsを変数に格納する。

参照: kink/param/REST_PARAM

例

6.26.1.8. Varref.opt

optは、変数を元とするopt_param値を戻す。

結果のopt_paramの pass_arg(Arg) メソッドは、単一要素のベクタ [Arg] を変数に格納する。

結果のopt_paramの pass_nothing メソッドは、空のベクタを変数に格納する。

参照: kink/param/OPT_PARAM

例

6.26.2. VARREF.new(Owner Sym)

newは、 (Owner, Sym) のvarrefを戻す。

事前条件

Symはstrでなければならない。

例

6.26.3. VARREF.is?(Val)

is?は、Valがvarrefかどうかを戻す。