@@ -586,23 +586,23 @@ static int TypeTreeNode_init(TypeTreeNodeObject *self, PyObject *args, PyObject
586586 " m_Type" ,
587587 " m_Name" ,
588588 " m_ByteSize" ,
589- " m_TypeFlags" ,
590589 " m_Version" ,
591590 " m_Children" ,
591+ " m_TypeFlags" ,
592592 " m_VariableCount" ,
593593 " m_Index" ,
594594 " m_MetaFlag" ,
595595 " m_RefTypeHash" ,
596596 NULL };
597597
598- if (!PyArg_ParseTupleAndKeywords (args, kwargs, " OOOOOO| OOOOO" , (char **)kwlist,
598+ if (!PyArg_ParseTupleAndKeywords (args, kwargs, " OOOOO|OOOOOO " , (char **)kwlist,
599599 &self->m_Level ,
600600 &self->m_Type ,
601601 &self->m_Name ,
602602 &self->m_ByteSize ,
603- &self->m_TypeFlags ,
604603 &self->m_Version ,
605604 &self->m_Children ,
605+ &self->m_TypeFlags ,
606606 &self->m_VariableCount ,
607607 &self->m_Index ,
608608 &self->m_MetaFlag ,
@@ -615,7 +615,6 @@ static int TypeTreeNode_init(TypeTreeNodeObject *self, PyObject *args, PyObject
615615 Py_INCREF (self->m_Type );
616616 Py_INCREF (self->m_Name );
617617 Py_INCREF (self->m_ByteSize );
618- Py_INCREF (self->m_TypeFlags );
619618 Py_INCREF (self->m_Version );
620619 // optional fields
621620 if (self->m_Children == nullptr )
@@ -626,39 +625,23 @@ static int TypeTreeNode_init(TypeTreeNodeObject *self, PyObject *args, PyObject
626625 {
627626 Py_XINCREF (self->m_Children );
628627 }
629- if (self->m_VariableCount == nullptr )
630- {
631- self->m_VariableCount = Py_None;
632- }
633- else
634- {
635- Py_INCREF (self->m_VariableCount );
636- }
637- if (self->m_Index == nullptr )
638- {
639- self->m_Index = Py_None;
640- }
641- else
642- {
643- Py_INCREF (self->m_Index );
644- }
645- if (self->m_MetaFlag == nullptr )
646- {
647- self->m_MetaFlag = Py_None;
648- }
649- else
650- {
651- Py_INCREF (self->m_MetaFlag );
652- }
653- if (self->m_RefTypeHash == nullptr )
654- {
655- self->m_RefTypeHash = Py_None;
656- }
657- else
658- {
659- Py_INCREF (self->m_RefTypeHash );
628+
629+ #define SET_NONE_IF_NULL (field ) \
630+ if (self->field == nullptr ) \
631+ { \
632+ self->field = Py_None; \
633+ } \
634+ else \
635+ { \
636+ Py_INCREF (self->field ); \
660637 }
661638
639+ SET_NONE_IF_NULL (m_TypeFlags);
640+ SET_NONE_IF_NULL (m_VariableCount);
641+ SET_NONE_IF_NULL (m_Index);
642+ SET_NONE_IF_NULL (m_MetaFlag);
643+ SET_NONE_IF_NULL (m_RefTypeHash);
644+
662645 if (self->m_MetaFlag != Py_None && PyLong_AsLong (self->m_MetaFlag ) & 0x4000 )
663646 {
664647 self->_align = true ;
0 commit comments