ExclusiveList - folklorecrysisprogrammer/folklorecrisis GitHub Wiki

Description

排他制御可能なList。
このクラスは、外部からListTypeとItemTypeを受け取ります。

継承先として、ChildListSubSceneListがあります。


Variables

名前 属性 初期値 概要
list protected ListType new ListType() 排他制御対象のリスト。
moveItemList private List<MoveItem> new List<MoveItem>() リストの移動予約。
lockCount int 0 要素の追加・削除しないためのロックのカウント。

Functions

名前 属性 概要
Lock() public void lockCountをインクリメントします。
UnLock() public void lockCountをデクリメントし、lockCountが0の場合、Merge関数を実行します。
Add(ItemType item) protected abstract void リストに追加する。
Remove(ItemType item) protected abstract void リストから削除する。
AddCheck public void リストに追加するNodeを予約する。
RemoceCheck public void リストから削除するNodeを予約する。
Merge() private void 予約していた追加・削除を実行する。

Structs

MoveItem private
予約するのに使用する保存形式です。

public ItemType item
public enum Mode = {add,remove}
public Mode mode
public MoveItem(ItemType _item,Mode _mode)

⚠️ **GitHub.com Fallback** ⚠️