private void AddEfferentCoupling(MethodReference from, IEnumerable <MemberAccess> to, int complexity) { CouplingCacheNode node; var fromFullName = from.GetCacheName(); if (!_efferentCache.TryGetValue(fromFullName, out node)) { lock (_efferentCache) { if (!_efferentCache.TryGetValue(fromFullName, out node)) { node = new CouplingCacheNode(fromFullName, from); node.Complexity = complexity; _efferentCache.Add(fromFullName, node); } } } lock (node) { foreach (var current in to) { node.AddCoupling(new Coupling(current.MemberReference.GetCacheName(), current.IsReadOnly, false, current.IsSelfCall, current.OnField, current.ActualMethodDefinition)); } } }
public string GetSpecificallyMangledName(MethodReference target) { if (IsTest(target)) { last = target; } if (IsProfilerTest(target)) { return(last.GetCacheName()); } return(null); }