Exemple #1
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="behaviour">Behaviour</param>
 /// <param name="max">Max</param>
 /// <param name="key">Key</param>
 /// <param name="order">Order</param>
 public Pool(PoolMaxBehaviour behaviour, uint max, Func <TValue, TKey> key, Comparison <TValue> order)
 {
     Behaviour = behaviour;
     Max       = max;
     _key      = key;
     _order    = order;
     _isSorted = false;
     _list     = new List <Entry>();
 }
Exemple #2
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="behaviour">Behaviour</param>
        /// <param name="max">Max</param>
        /// <param name="key">Key</param>
        /// <param name="order">Order</param>
        public Pool(PoolMaxBehaviour behaviour, int max, Func <TValue, TKey> key, Comparison <TValue> order)
        {
            if (max <= 0)
            {
                throw new ArgumentException(nameof(max));
            }

            Behaviour = behaviour;
            Max       = max;
            _key      = key;
            _order    = order;
            _isSorted = false;
            _list     = new List <Entry>();
            _comparer = new EntryComparer();
        }
Exemple #3
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="behaviour">Behaviour</param>
 /// <param name="max">Max</param>
 /// <param name="key">Key</param>
 /// <param name="order">Order</param>
 public StampedPool(PoolMaxBehaviour behaviour, uint max, Func <Stamp <TValue>, TKey> key, Comparison <Stamp <TValue> > order)
     : base(behaviour, max, key, order)
 {
 }