using System; using System.Collections.Generic; namespace LuaInterface { internal class EventHandlerContainer : IDisposable { private Dictionary dict = new Dictionary(); public void Add(Delegate handler, RegisterEventHandler eventInfo) { dict.Add(handler, eventInfo); } public void Remove(Delegate handler) { bool flag = dict.Remove(handler); } public void Dispose() { foreach (KeyValuePair item in dict) { item.Value.RemovePending(item.Key); } dict.Clear(); } } }