@@ -909,18 +909,20 @@ def do_enum(self, parent=None, ident=0):
909909
910910 :param parent:
911911 :param ident: Log indentation level
912- :return: An enumeration name
912+ :return: A JavaEnum object
913913 """
914914 # TC_ENUM classDesc newHandle enumConstantName
915- enum = JavaObject ()
916- _ , _ = self ._read_and_exec_opcode (
917- ident = ident + 1 , expect = (self .TC_CLASSDESC ,
918- self .TC_PROXYCLASSDESC ,
919- self .TC_NULL , self .TC_REFERENCE ))
920- self ._add_reference (enum )
915+ enum = JavaEnum ()
916+ _ , classdesc = self ._read_and_exec_opcode (
917+ ident = ident + 1 ,
918+ expect = (self .TC_CLASSDESC , self .TC_PROXYCLASSDESC ,
919+ self .TC_NULL , self .TC_REFERENCE ))
920+ enum .classdesc = classdesc
921+ self ._add_reference (enum , ident )
921922 _ , enumConstantName = self ._read_and_exec_opcode (
922923 ident = ident + 1 , expect = (self .TC_STRING , self .TC_REFERENCE ))
923- return enumConstantName
924+ enum .constant = enumConstantName
925+ return enum
924926
925927 @staticmethod
926928 def _create_hexdump (src , length = 16 ):
0 commit comments