if modelbuilder.mpropdef2npropdef.has_key(self) then
var npropdef = modelbuilder.mpropdef2npropdef[self]
return npropdef.can_inline
- else if self.mproperty.name == "init" then
+ else if self.mproperty.is_root_init then
# Automatic free init is always inlined since it is empty or contains only attribtes assigments
return true
else
self.compile_parameter_check(v, arguments)
npropdef.compile_to_c(v, self, arguments)
v.current_node = oldnode
- else if self.mproperty.name == "init" then
+ else if self.mproperty.is_root_init then
var nclassdef = modelbuilder.mclassdef2nclassdef[self.mclassdef]
var oldnode = v.current_node
v.current_node = nclassdef
print "Error, invalid propdef to call at runtime !"
return null
end
- else if mproperty.name == "init" then
+ else if mproperty.is_root_init then
var nclassdef = self.modelbuilder.mclassdef2nclassdef[mpropdef.mclassdef]
self.parameter_check(nclassdef, mpropdef, args)
return nclassdef.call(self, mpropdef, args)
var npropdef = self.modelbuilder.mpropdef2npropdef[mpropdef]
self.parameter_check(npropdef, mpropdef, args)
return npropdef.call(self, mpropdef, args)
- else if mproperty.name == "init" then
+ else if mproperty.is_root_init then
var nclassdef = self.modelbuilder.mclassdef2nclassdef[mpropdef.mclassdef]
self.parameter_check(nclassdef, mpropdef, args)
return nclassdef.call(self, mpropdef, args)
if not modelbuilder.mpropdef2npropdef.has_key(mmethoddef) then
# It is an init for a class?
- if mmeth.name == "init" then
+ if mmeth.is_root_init then
var nclassdef = self.modelbuilder.mclassdef2nclassdef[mmethoddef.mclassdef]
assert mmethoddef == nclassdef.mfree_init