枠1つ。宣言(CellDef)と、今そこに入っているもの(ObjectStack)の組。
枠の宣言は添字ではなく枠そのものに付く。ずらしても動くのは中身だけで、宣言は元の位置に留まる (枠数を決めたスロットでは、cells[2] が受け入れる型は中身が入れ替わっても変わらない)。
cells[2]
中身を入れ替えるのはCellLayoutだけ。枠は並びの外へ単独では出ないので、TypeScriptのfriendの代わりに 名前で断っている。
オプション
非公開
読み取り専用
この枠がcandidateを受け入れる型か(個数は見ない)。
今入っているスタックへ合流できるか。束ねられる型で(SlotSystem.md 4節)、代表チェーンが一致し (同 5節)、maxに空きがあること(GameElementDefinition.md 7.2節)。
中身を入れ替える(CellLayout専用)。
合流できるなら入れる。maxを守るのはこの枠自身(ObjectStackは自分の上限を知らない)。
この枠にあと何個入るか。空き枠なら型が合えばmax個(束ねられない型は1個)、埋まっていれば 合流できる場合のmaxまでの残り。
枠1つ。宣言(CellDef)と、今そこに入っているもの(ObjectStack)の組。
枠の宣言は添字ではなく枠そのものに付く。ずらしても動くのは中身だけで、宣言は元の位置に留まる (枠数を決めたスロットでは、
cells[2]が受け入れる型は中身が入れ替わっても変わらない)。中身を入れ替えるのはCellLayoutだけ。枠は並びの外へ単独では出ないので、TypeScriptのfriendの代わりに 名前で断っている。