Jelajahi Sumber

[cs] construct BindingFlags without boxing casts to int for bitwise ops, using new cs.Flags type

Dan Korostelev 10 tahun lalu
induk
melakukan
e4d7c88d9f
2 mengubah file dengan 2 tambahan dan 4 penghapusan
  1. 1 2
      std/cs/_std/Reflect.hx
  2. 1 2
      std/cs/_std/Type.hx

+ 1 - 2
std/cs/_std/Reflect.hx

@@ -137,8 +137,7 @@ import cs.system.reflection.*;
 	{
 		var c = cs.Lib.toNativeType(c);
 		var ret = [];
-		var bindingFlags:BindingFlags = cast cast(BindingFlags.Public, Int) | cast(BindingFlags.Instance, Int) | cast(BindingFlags.FlattenHierarchy,Int);
-		var mis = c.GetFields(bindingFlags);
+		var mis = c.GetFields(new cs.Flags(BindingFlags.Public) | BindingFlags.Instance | BindingFlags.FlattenHierarchy);
 		for (i in 0...mis.Length)
 		{
 			var i = mis[i];

+ 1 - 2
std/cs/_std/Type.hx

@@ -257,8 +257,7 @@ using StringTools;
 
 		var c = cs.Lib.toNativeType(c);
 		var ret = [];
-		var bindingFlags:BindingFlags = cast cast(BindingFlags.Public, Int) | cast(BindingFlags.Instance, Int) | cast(BindingFlags.FlattenHierarchy,Int);
-		var mis = c.GetMembers(bindingFlags);
+		var mis = c.GetMembers(new cs.Flags(BindingFlags.Public) | BindingFlags.Instance | BindingFlags.FlattenHierarchy);
 		for (i in 0...mis.Length)
 		{
 			var i = mis[i];