@@ -344,38 +344,42 @@ public static void FreeModuleDef(IntPtr ptr)
344344 /// Note that the two values reserved for stackless have been put
345345 /// to good use as PythonNet specific flags (Managed and Subclass)
346346 /// </summary>
347- internal class TypeFlags
347+ // Py_TPFLAGS_*
348+ [ Flags ]
349+ public enum TypeFlags : int
348350 {
349- public const int HeapType = ( 1 << 9 ) ;
350- public const int BaseType = ( 1 << 10 ) ;
351- public const int Ready = ( 1 << 12 ) ;
352- public const int Readying = ( 1 << 13 ) ;
353- public const int HaveGC = ( 1 << 14 ) ;
351+ HeapType = ( 1 << 9 ) ,
352+ BaseType = ( 1 << 10 ) ,
353+ Ready = ( 1 << 12 ) ,
354+ Readying = ( 1 << 13 ) ,
355+ HaveGC = ( 1 << 14 ) ,
354356 // 15 and 16 are reserved for stackless
355- public const int HaveStacklessExtension = 0 ;
357+ HaveStacklessExtension = 0 ,
356358 /* XXX Reusing reserved constants */
357- public const int Managed = ( 1 << 15 ) ; // PythonNet specific
358- public const int Subclass = ( 1 << 16 ) ; // PythonNet specific
359- public const int HaveIndex = ( 1 << 17 ) ;
359+ /// <remarks>PythonNet specific</remarks>
360+ Managed = ( 1 << 15 ) ,
361+ /// <remarks>PythonNet specific</remarks>
362+ Subclass = ( 1 << 16 ) ,
363+ HaveIndex = ( 1 << 17 ) ,
360364 /* Objects support nb_index in PyNumberMethods */
361- public const int HaveVersionTag = ( 1 << 18 ) ;
362- public const int ValidVersionTag = ( 1 << 19 ) ;
363- public const int IsAbstract = ( 1 << 20 ) ;
364- public const int HaveNewBuffer = ( 1 << 21 ) ;
365+ HaveVersionTag = ( 1 << 18 ) ,
366+ ValidVersionTag = ( 1 << 19 ) ,
367+ IsAbstract = ( 1 << 20 ) ,
368+ HaveNewBuffer = ( 1 << 21 ) ,
365369 // TODO: Implement FastSubclass functions
366- public const int IntSubclass = ( 1 << 23 ) ;
367- public const int LongSubclass = ( 1 << 24 ) ;
368- public const int ListSubclass = ( 1 << 25 ) ;
369- public const int TupleSubclass = ( 1 << 26 ) ;
370- public const int StringSubclass = ( 1 << 27 ) ;
371- public const int UnicodeSubclass = ( 1 << 28 ) ;
372- public const int DictSubclass = ( 1 << 29 ) ;
373- public const int BaseExceptionSubclass = ( 1 << 30 ) ;
374- public const int TypeSubclass = ( 1 << 31 ) ;
375-
376- public const int Default = (
370+ IntSubclass = ( 1 << 23 ) ,
371+ LongSubclass = ( 1 << 24 ) ,
372+ ListSubclass = ( 1 << 25 ) ,
373+ TupleSubclass = ( 1 << 26 ) ,
374+ StringSubclass = ( 1 << 27 ) ,
375+ UnicodeSubclass = ( 1 << 28 ) ,
376+ DictSubclass = ( 1 << 29 ) ,
377+ BaseExceptionSubclass = ( 1 << 30 ) ,
378+ TypeSubclass = ( 1 << 31 ) ,
379+
380+ Default = (
377381 HaveStacklessExtension |
378- HaveVersionTag ) ;
382+ HaveVersionTag ) ,
379383 }
380384
381385
0 commit comments