Class Pool<T>

Arrayをラップ拡張し、プーリング機能を追加したクラス

Type Parameters

  • T = any

Hierarchy

  • Pool

Constructors

  • Type Parameters

    • T = any

    Returns Pool<T>

Properties

_commonEvaluator: Evaluator = ...
_pool: T[] = []

Accessors

  • get commonEvaluator(): Evaluator
  • オブジェクトが使える状態か評価するための関数をクローンして返す

    デフォルトではオブジェクトにparentプロパティが存在するかで確認する

    Returns Evaluator

  • get pooledNum(): number
  • Number of objects pooled

    Returns number

Methods

  • helper関数 コールバックでオブジェクトを指定回数分取得、プールに追加する

    Parameters

    • num: number

      Pooling object number (== Pooing callback execution count)

    • cb: ((i: number, filledNum: number) => T)

      Callback func returning object to pool

        • (i: number, filledNum: number): T
        • Parameters

          • i: number
          • filledNum: number

          Returns T

    Returns void

  • プールから使える状態のオブジェクトを取り出す 見つからなければundefinedを返す

    Parameters

    • Optional evaluator: Evaluator

      オブジェクトが使える状態か確認するための関数 指定の無い場合は共通Evaluatorを使う

    Returns undefined | T

  • Index指定でプールからオブジェクトを取り出す 見つからなければundefinedを返す

    Parameters

    • index: number
    • Optional evaluator: Evaluator

      オブジェクトが使える状態か確認するための関数 指定の無い場合は共通Evaluatorを使う

    Returns undefined | T

  • 指定オブジェクトをプールする

    Returns

    プール後の配列長(length)

    Parameters

    • Rest ...arg: T[]

    Returns number

  • オブジェクトが使える状態か評価するための共通関数をセット

    Parameters

    • func: Evaluator

    Returns void

Generated using TypeDoc