public MemberMap(IEnumerable<MethodInfo> methods, IEnumerable<EventInfo> events, IEnumerable<PropertyInfo> propertys, IEnumerable<System.Tuple<System.Type, System.Func<Regulus.Remote.IProvider>>> interfaces) { _Providers = new Dictionary<Type, Func<IProvider>>(); _Methods = new BilateralMap<int, MethodInfo>(this, this); _Events = new BilateralMap<int, EventInfo>(this, this); _Propertys = new BilateralMap<int, PropertyInfo>(this, this); _Interfaces = new BilateralMap<int, Type>(this, this); int id = 0; foreach (MethodInfo method in methods) { _Methods.Add(++id, method); } id = 0; foreach (EventInfo eventInfo in events) { _Events.Add(++id, eventInfo); } id = 0; foreach (PropertyInfo propertyInfo in propertys) { _Propertys.Add(++id, propertyInfo); } id = 0; foreach (Tuple<Type, Func<IProvider>> @interface in interfaces) { _Interfaces.Add(++id, @interface.Item1); _Providers.Add(@interface.Item1, @interface.Item2); } }
public MemberMap(IEnumerable <MethodInfo> methods, IEnumerable <EventInfo> events, IEnumerable <PropertyInfo> properties, IEnumerable <Type> interfaces) { _Methods = new BilateralMap <int, MethodInfo>(this, this); _Events = new BilateralMap <int, EventInfo>(this, this); _Properties = new BilateralMap <int, PropertyInfo>(this, this); _Interfaces = new BilateralMap <int, Type>(this, this); var id = 0; foreach (var method in methods) { _Methods.Add(++id, method); } id = 0; foreach (var eventInfo in events) { _Events.Add(++id, eventInfo); } id = 0; foreach (var propertyInfo in properties) { _Properties.Add(++id, propertyInfo); } id = 0; foreach (var @interface in interfaces) { _Interfaces.Add(++id, @interface); } }