Example #1
0
        public Maybe <TItem> MaybeGetItem <TItem>(TypedKey <TItem> key) where TItem : TItemBase
        {
            TypedKey          erasedKey = key;
            Maybe <TItemBase> result    = MaybeGetItem(erasedKey);

            if (result.HasValue)
            {
                return(Maybe.Return((TItem)result.Value));
            }
            return(Maybe.Nothing);
        }
Example #2
0
 public Maybe <T> MaybeGetItem(TypedKey key)
 {
     return(_items.GetValue(key.Type));
 }
Example #3
0
 public void RemoveItem(TypedKey key)
 {
     _items.Remove(key.Type);
 }
Example #4
0
 public void AddItem(TypedKey key, T item)
 {
     _items[key.Type] = item;
 }
Example #5
0
        public void AddItem <TItem>(TypedKey <TItem> key, TItem item) where TItem : TItemBase
        {
            TypedKey erasedKey = key;

            AddItem(erasedKey, item);
        }
Example #6
0
        public void RemoveItem <TItem>(TypedKey <TItem> key)
        {
            TypedKey erasedKey = key;

            RemoveItem(erasedKey);
        }