Ver Fonte

[cpp] Fix interface casting for cppia. Do not inline native functions on cppia. Export IMap interface

Hugh há 10 anos atrás
pai
commit
99170bbd8a
1 ficheiros alterados com 5 adições e 4 exclusões
  1. 5 4
      std/cpp/cppia/HostClasses.hx

+ 5 - 4
std/cpp/cppia/HostClasses.hx

@@ -4,10 +4,6 @@ import haxe.macro.Compiler;
 import haxe.macro.Context;
 import haxe.macro.Type;
 
-#if (!cppia)
-import Sys;
-#end
-
 #if !macro
   #if cppia
   @:build(cpp.cppia.HostClasses.exclude())
@@ -15,6 +11,9 @@ import Sys;
 class HostClasses { }
 #else
 
+import Sys;
+import haxe.Constraints;
+
 @:noPackageRestrict
 class HostClasses
 {
@@ -135,6 +134,7 @@ class HostClasses
    {
       var externs = new Map<String,Bool>();
       externs.set("Sys",true);
+      externs.set("haxe.IMap",true);
       for(e in classes)
          externs.set(e,true);
       for(path in Context.getClassPath())
@@ -187,6 +187,7 @@ class HostClasses
    // Ensure that the standard classes are included in the host
    public static function include()
    {
+      Compiler.keep("haxe.IMap");
       for(cls in classes)
       {
          Context.getModule(cls);