Eolian: Add imports and __init__ method to generated py classes
This commit is contained in:
parent
137e6b7e21
commit
5795f762dc
|
@ -566,9 +566,6 @@ class Class(object):
|
|||
gen.write()
|
||||
|
||||
def py_generate(self, gen):
|
||||
if len(self.inherits) < 2:
|
||||
return
|
||||
|
||||
inherits = ["_" + self.cls.name]
|
||||
for i in self.inherits:
|
||||
i_cls = eolian.class_find_by_name(i)
|
||||
|
@ -580,9 +577,26 @@ class Class(object):
|
|||
log.warn("Class %s is unknown" % (i))
|
||||
inherits.append("_" + i)
|
||||
|
||||
for i in inherits:
|
||||
pfix = i.split("_")[1]
|
||||
m = pfix.lower()
|
||||
gen.write("from %s import %s" % (m, i))
|
||||
|
||||
gen.write()
|
||||
gen.write()
|
||||
|
||||
gen.write("class %s(%s):" % (self.cls.name, ", ".join(inherits)))
|
||||
gen.indent()
|
||||
gen.write("pass")
|
||||
|
||||
gen.write("def __init__(self, parent=None, *args, **kwargs):")
|
||||
gen.indent()
|
||||
gen.write(
|
||||
"_%s.__init__(self, parent=None, *args, **kwargs)" % (
|
||||
self.cls.name
|
||||
)
|
||||
)
|
||||
|
||||
gen.dedent()
|
||||
gen.dedent()
|
||||
gen.write()
|
||||
|
||||
|
|
Loading…
Reference in New Issue