Bladeren bron

add some comments

Dan Korostelev 11 jaren geleden
bovenliggende
commit
e6c52526ab
1 gewijzigde bestanden met toevoegingen van 3 en 1 verwijderingen
  1. 3 1
      filters.ml

+ 3 - 1
filters.ml

@@ -320,6 +320,7 @@ let captured_vars com e =
 	let t = com.basic in
 	let t = com.basic in
 
 
 	let impl = match com.platform with
 	let impl = match com.platform with
+	(* optimized version for C# - use native .net arrays *)
 	| Cs ->
 	| Cs ->
 		let cnativearray =
 		let cnativearray =
 			match (List.find (fun md -> match md with
 			match (List.find (fun md -> match md with
@@ -336,7 +337,7 @@ let captured_vars com e =
 				let earg = match ve with
 				let earg = match ve with
 					| None ->
 					| None ->
 						let t = match v.v_type with TInst (_, [t]) -> t | _ -> assert false in
 						let t = match v.v_type with TInst (_, [t]) -> t | _ -> assert false in
-						mk (TConst TNull) t p
+						mk (TConst TNull) t p (* gencs will do the right thing for the non-nullable types *)
 					| Some e -> e
 					| Some e -> e
 				in
 				in
 				{ (Optimizer.mk_untyped_call "__array__" p [earg]) with etype = v.v_type }
 				{ (Optimizer.mk_untyped_call "__array__" p [earg]) with etype = v.v_type }
@@ -349,6 +350,7 @@ let captured_vars com e =
 				let earray = { (Optimizer.mk_untyped_call "__array__" pos [elocal]) with etype = av.v_type } in
 				let earray = { (Optimizer.mk_untyped_call "__array__" pos [elocal]) with etype = av.v_type } in
 				mk (TVar (av,Some earray)) t.tvoid pos
 				mk (TVar (av,Some earray)) t.tvoid pos
 		end
 		end
+	(* default implementation - use haxe array *)
 	| _ ->
 	| _ ->
 		object
 		object
 			method captured_type = t.tarray
 			method captured_type = t.tarray