contrib/objcwrapper: redef the NSObject class as it exists in the manual lib
authorAlexis Laferrière <alexis.laf@xymus.net>
Wed, 2 Sep 2015 19:27:20 +0000 (15:27 -0400)
committerAlexis Laferrière <alexis.laf@xymus.net>
Thu, 3 Sep 2015 14:32:31 +0000 (10:32 -0400)
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

contrib/objcwrapper/src/objc_generator.nit

index d6be6f5..cdb2fae 100644 (file)
@@ -117,17 +117,21 @@ class CodeGenerator
 
        private fun write_class(classe: ObjcClass, file: Writer)
        do
+               # FIXME remove the redef when the base lib is generated by objcwrapper
+               var r = ""
+               if classe.name == "NSObject" then r = "redef "
+
                # Class header
                file.write """
 
-extern class {{{classe.name}}} in "ObjC" `{ {{{classe.name}}} * `}
+{{{r}}}extern class {{{classe.name}}} in "ObjC" `{ {{{classe.name}}} * `}
 """
 
                # Supers
                for super_name in classe.super_names do file.write """
        super {{{super_name}}}
 """
-               if classe.super_names.is_empty then file.write """
+               if classe.super_names.is_empty and classe.name != "NSObject" then file.write """
        super NSObject
 """