Bladeren bron

[java] made enum classes not be hxgen on Java

Caue Waneck 13 jaren geleden
bovenliggende
commit
1d9675e1ea
4 gewijzigde bestanden met toevoegingen van 9 en 8 verwijderingen
  1. 7 6
      gencommon.ml
  2. 1 1
      gencs.ml
  3. 1 1
      genjava.ml
  4. 0 0
      std/java/_std/haxe/lang/HxObject.hx

+ 7 - 6
gencommon.ml

@@ -7456,7 +7456,7 @@ struct
         false
       with | Exit -> true
     
-    let convert gen t base_class en = 
+    let convert gen t base_class en should_be_hxgen = 
       let basic = gen.gcon.basic in
       let pos = en.e_pos in
       
@@ -7530,7 +7530,7 @@ struct
       cl.cl_ordered_statics <- constructs_cf :: cfs ;
       cl.cl_statics <- PMap.add "constructs" constructs_cf cl.cl_statics;
       
-      cl.cl_meta <- (":hxgen",[],cl.cl_pos) :: cl.cl_meta;
+      (if should_be_hxgen then cl.cl_meta <- (":hxgen",[],cl.cl_pos) :: cl.cl_meta);
       gen.gadd_to_module (TClassDecl cl) (max_dep);
       
       TEnumDecl en
@@ -7541,9 +7541,10 @@ struct
         convert_all : bool - should we convert all enums? If set, convert_if_has_meta will be ignored.
         convert_if_has_meta : bool - should we convert only if it has meta?
         enum_base_class : tclass - the enum base class. 
+        should_be_hxgen : bool - should the created enum be hxgen?
     *)
-    let traverse gen t convert_all convert_if_has_meta enum_base_class =
-      let convert = convert gen t enum_base_class in
+    let traverse gen t convert_all convert_if_has_meta enum_base_class should_be_hxgen =
+      let convert e = convert gen t enum_base_class e should_be_hxgen in
       let run md = match md with
         | TEnumDecl e when is_hxgen md ->
           if convert_all then 
@@ -7673,9 +7674,9 @@ struct
     
   end;;
   
-  let configure gen opt_get_native_enum_tag convert_all convert_if_has_meta enum_base_class =
+  let configure gen opt_get_native_enum_tag convert_all convert_if_has_meta enum_base_class should_be_hxgen =
     let t = new_t () in
-    EnumToClassModf.configure gen (EnumToClassModf.traverse gen t convert_all convert_if_has_meta enum_base_class);
+    EnumToClassModf.configure gen (EnumToClassModf.traverse gen t convert_all convert_if_has_meta enum_base_class should_be_hxgen);
     EnumToClassExprf.configure gen (EnumToClassExprf.traverse gen t opt_get_native_enum_tag)
   
 end;;

+ 1 - 1
gencs.ml

@@ -1220,7 +1220,7 @@ let configure gen =
   
   ClosuresToClass.configure gen (ClosuresToClass.default_implementation closure_t (get_cl (Hashtbl.find gen.gtypes (["haxe";"lang"],"Function")) ));
   
-  EnumToClass.configure gen (Some (fun e -> mk_cast gen.gcon.basic.tint e)) false true (get_cl (Hashtbl.find gen.gtypes (["haxe";"lang"],"Enum")) );
+  EnumToClass.configure gen (Some (fun e -> mk_cast gen.gcon.basic.tint e)) false true (get_cl (Hashtbl.find gen.gtypes (["haxe";"lang"],"Enum")) ) true;
   
   InterfaceVarsDeleteModf.configure gen;
   

+ 1 - 1
genjava.ml

@@ -1431,7 +1431,7 @@ let configure gen =
   
   ClosuresToClass.configure gen (ClosuresToClass.default_implementation closure_t (get_cl (Hashtbl.find gen.gtypes (["haxe";"lang"],"Function")) ));
   
-  EnumToClass.configure gen (None) false true (get_cl (Hashtbl.find gen.gtypes (["haxe";"lang"],"Enum")) );
+  EnumToClass.configure gen (None) false true (get_cl (Hashtbl.find gen.gtypes (["haxe";"lang"],"Enum")) ) false;
   
   InterfaceVarsDeleteModf.configure gen;
   

File diff suppressed because it is too large
+ 0 - 0
std/java/_std/haxe/lang/HxObject.hx


Some files were not shown because too many files changed in this diff