public MapperCacheItem AddStub(TypePair key)
        {
            if (_cache.ContainsKey(key))
            {
                return(_cache[key]);
            }

            var mapperCacheItem = new MapperCacheItem {
                Id = GetId()
            };

            _cache[key] = mapperCacheItem;
            return(mapperCacheItem);
        }
        public MapperCacheItem Add(TypePair key, Mapper mapper)
        {
            if (_cache.TryGetValue(key, out var result))
            {
                return(result);
            }

            result = new MapperCacheItem
            {
                Id     = GetId(),
                Mapper = mapper
            };
            _cache[key] = result;
            return(result);
        }