private static void ProcessAttributes(IPlugin plugin, PluginAssemblyPointer ptr) { Dictionary <MemberInfo, Attribute[]> attribs = plugin.GetMemberAttributes <Attribute>( true, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic ); foreach (KeyValuePair <MemberInfo, Attribute[]> keyValuePair in attribs) { keyValuePair.Value.ToList().ForEach(x => AttributeManager.Handle(plugin, ptr, keyValuePair.Key, x)); } }