From 2a8f8550c88db1012530b8c915afb8db2e6130d8 Mon Sep 17 00:00:00 2001 From: Jean Privat Date: Fri, 17 Oct 2014 05:57:22 -0400 Subject: [PATCH] model-clients: use `is_root_init` instead of `.name == "init"` Signed-off-by: Jean Privat --- src/compiler/abstract_compiler.nit | 4 ++-- src/interpreter/debugger.nit | 2 +- src/interpreter/naive_interpreter.nit | 2 +- src/rapid_type_analysis.nit | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/compiler/abstract_compiler.nit b/src/compiler/abstract_compiler.nit index 85222a9..d4d2302 100644 --- a/src/compiler/abstract_compiler.nit +++ b/src/compiler/abstract_compiler.nit @@ -1845,7 +1845,7 @@ redef class MMethodDef 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 @@ -1865,7 +1865,7 @@ redef class MMethodDef 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 diff --git a/src/interpreter/debugger.nit b/src/interpreter/debugger.nit index 771d4a2..8723ed7 100644 --- a/src/interpreter/debugger.nit +++ b/src/interpreter/debugger.nit @@ -289,7 +289,7 @@ class Debugger 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) diff --git a/src/interpreter/naive_interpreter.nit b/src/interpreter/naive_interpreter.nit index e16f060..a0b9e54 100644 --- a/src/interpreter/naive_interpreter.nit +++ b/src/interpreter/naive_interpreter.nit @@ -381,7 +381,7 @@ class NaiveInterpreter 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) diff --git a/src/rapid_type_analysis.nit b/src/rapid_type_analysis.nit index 897d7b7..7c4bcec 100644 --- a/src/rapid_type_analysis.nit +++ b/src/rapid_type_analysis.nit @@ -237,7 +237,7 @@ class RapidTypeAnalysis 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 -- 1.7.9.5