예제 #1
0
        public override void Break()
        {
            Trace.WriteLine(String.Format("Removing export of type {0} because that type is being removed.", ExportedType), "TypeDependency");
            Module.ExportedTypes.Remove(ExportedType);

            TypeReferenceAndDependencies xxx = default(KeyValuePair <TypeReference, HashSet <TypeDependency> >);
        }
        void AddDependencies(Dictionary <TypeReference, HashSet <TypeDependency> > storage, TypeReferenceAndDependencies addition)
        {
            var typeRef = addition.Type;
            HashSet <TypeDependency> members = null;

            if (!storage.TryGetValue(typeRef, out members))
            {
                members = new HashSet <TypeDependency>();
                storage.Add(typeRef, members);
            }
            var addedMembers = addition.DependingMembers;

            members.UnionWith(addedMembers);
        }