nitg & lib: intro `Finalizable` to be called when an object is freed
[nit.git] / src / rapid_type_analysis.nit
index bb11a4c..2a4e8f2 100644 (file)
@@ -196,6 +196,12 @@ class RapidTypeAnalysis
                        add_send(maintype, mainprop)
                end
 
+               var finalizable_type = mainmodule.finalizable_type
+               if finalizable_type != null then
+                       var finalize_meth = mainmodule.try_get_primitive_method("finalize", finalizable_type.mclass)
+                       if finalize_meth != null then add_send(finalizable_type, finalize_meth)
+               end
+
                # Force primitive types
                force_alive("Bool")
                force_alive("Int")