xmlclass/xmlclass.py
changeset 1385 816705d1e512
parent 1330 96b242e4c59d
child 1405 0b9cd761a356
equal deleted inserted replaced
1383:45935812f930 1385:816705d1e512
  1051         else:
  1051         else:
  1052             classname = name
  1052             classname = name
  1053         
  1053         
  1054         # Checks that classe haven't been generated yet
  1054         # Checks that classe haven't been generated yet
  1055         if self.AlreadyComputed.get(classname, False):
  1055         if self.AlreadyComputed.get(classname, False):
  1056             if baseclass:
       
  1057                 self.AlreadyComputed[classname].IsBaseClass = baseclass
       
  1058             return self.ComputedClassesInfos.get(classname, None)
  1056             return self.ComputedClassesInfos.get(classname, None)
  1059         
  1057         
  1060         # If base classes haven't been generated
  1058         # If base classes haven't been generated
  1061         bases = []
  1059         bases = []
  1062         base_infos = classinfos.get("base", None)
  1060         base_infos = classinfos.get("base", None)
  1148         classmembers["StructurePattern"] = GetStructurePattern(classinfos)
  1146         classmembers["StructurePattern"] = GetStructurePattern(classinfos)
  1149         classmembers["getElementAttributes"] = generateGetElementAttributes(self, classinfos)
  1147         classmembers["getElementAttributes"] = generateGetElementAttributes(self, classinfos)
  1150         classmembers["getElementInfos"] = generateGetElementInfos(self, classinfos)
  1148         classmembers["getElementInfos"] = generateGetElementInfos(self, classinfos)
  1151         classmembers["setElementValue"] = generateSetElementValue(self, classinfos)
  1149         classmembers["setElementValue"] = generateSetElementValue(self, classinfos)
  1152         
  1150         
  1153         class_definition = classobj(str(classname), bases, classmembers)
  1151         class_definition = classobj(str(name), bases, classmembers)
  1154         setattr(class_definition, "__getattr__", generateGetattrMethod(self, class_definition, classinfos))
  1152         setattr(class_definition, "__getattr__", generateGetattrMethod(self, class_definition, classinfos))
  1155         setattr(class_definition, "__setattr__", generateSetattrMethod(self, class_definition, classinfos))
  1153         setattr(class_definition, "__setattr__", generateSetattrMethod(self, class_definition, classinfos))
  1156         class_infos = {"type": COMPILEDCOMPLEXTYPE,
  1154         class_infos = {"type": COMPILEDCOMPLEXTYPE,
  1157                        "name": classname,
  1155                        "name": classname,
  1158                        "initial": generateClassCreateFunction(class_definition),
  1156                        "initial": generateClassCreateFunction(class_definition),