UnmappedIsland ソースリファレンス - v0.1.0
    検索インデックスを準備しています...

    クラス ObjectWrapper抽象

    1つのWorldObjectを、世界の語彙で名前を与えて読み書きするための型付きの窓 (World・Location・PlayerCharacter・Path)。

    継承(class World extends WorldObject)ではなくラップにしている。 WorldCodexがtraitによる 合成モデルを採用しており、クラス階層と噛み合わないため。多態のための族ではないので、 「どれか1つの包み」として受け取る場所は無い——総称して扱いたいならWorldObjectをそのまま使う。

    宣言していない名前は、空・0として読める。 「その名前を持つか」は語彙ではなくインスタンスが 答えるので、探索の宣言を持たない土地に対しても包みを作れる。undefinedと0を区別したい問いだけが tryNumberOfを使う。

    ここへ置いてよいのは、包みであることに由来する下働きだけ。オブジェクトに関わるというだけの 操作を集めると、WorldObjectを分けた意味が失われる。

    語彙は包む物から引く。 物はどのセッションに属するかを自分で知っており、セッションは1つの WorldCodexに属するので、包む側が別に渡すと噛み合わない組を渡せてしまう。

    階層 (一覧を見る)

    インデックス
    codex: WorldCodex
    instance: WorldObject
    • 名指しの枠の中身を、積み重なっているまとまりごとに分けたものの写し(Slot.stacks)。宣言して いなければ空。

      平らに返す口(contentsOf)と別に持つのは、1枚に2個と2枚に1個ずつを区別するため。 束ねる/ 束ねない(stackable)の決まりが守られているかは、この分かれ方でしか確かめられない。

      パラメータ

      戻り値 readonly (readonly WorldObject[])[]