Skip to content

Commit 7988fd1

Browse files
Remove GetOrAdd extension method
1 parent 8c8947d commit 7988fd1

File tree

4 files changed

+13
-24
lines changed

4 files changed

+13
-24
lines changed

Assets/Reflex/Caching/TypeConstructionInfoCache.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,13 @@ internal static class TypeConstructionInfoCache
1313

1414
internal static TypeConstructionInfo Get(Type type)
1515
{
16-
return _dictionary.GetOrAdd(type, Generate);
16+
if (!_dictionary.TryGetValue(type, out var info))
17+
{
18+
info = Generate(type);
19+
_dictionary.Add(type, info);
20+
}
21+
22+
return info;
1723
}
1824

1925
private static TypeConstructionInfo Generate(Type type)

Assets/Reflex/Core/ContainerBuilder.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,12 @@ public Container Build()
3535

3636
foreach (var contract in binding.Contracts)
3737
{
38-
var resolvers = resolversByContract.GetOrAdd(contract, _ => new List<IResolver>());
38+
if (!resolversByContract.TryGetValue(contract, out var resolvers))
39+
{
40+
resolvers = new List<IResolver>();
41+
resolversByContract.Add(contract, resolvers);
42+
}
43+
3944
resolvers.Add(binding.Resolver);
4045
}
4146
}

Assets/Reflex/Extensions/DictionaryExtensions.cs

Lines changed: 0 additions & 19 deletions
This file was deleted.

Assets/Reflex/Extensions/DictionaryExtensions.cs.meta

Lines changed: 0 additions & 3 deletions
This file was deleted.

0 commit comments

Comments
 (0)