mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	bpo-42727: [Enum] use super() and include **kwds (GH-23927)
for multiple inheritance support:
use super().new
pass **kwds to super().new
(cherry picked from commit 786d97a66c)
Co-authored-by: Ethan Furman <ethan@stoneleaf.us>
			
			
This commit is contained in:
		
							parent
							
								
									51f5029146
								
							
						
					
					
						commit
						fbffda25b4
					
				
					 1 changed files with 2 additions and 2 deletions
				
			
		|  | @ -227,10 +227,10 @@ def __new__(metacls, cls, bases, classdict, **kwds): | |||
|         # create our new Enum type | ||||
|         if bases: | ||||
|             bases = (_NoInitSubclass, ) + bases | ||||
|             enum_class = type.__new__(metacls, cls, bases, classdict) | ||||
|             enum_class = super().__new__(metacls, cls, bases, classdict, **kwds) | ||||
|             enum_class.__bases__ = enum_class.__bases__[1:] #or (object, ) | ||||
|         else: | ||||
|             enum_class = type.__new__(metacls, cls, bases, classdict) | ||||
|             enum_class = super().__new__(metacls, cls, bases, classdict, **kwds) | ||||
|         old_init_subclass = getattr(enum_class, '__init_subclass__', None) | ||||
|         # and restore the new one (if there was one) | ||||
|         if new_init_subclass is not None: | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Miss Islington (bot)
						Miss Islington (bot)