Просмотр исходного кода

[js/python] don't generate require/import for types that are not directly referenced by non-extern code (closes #3050)

Dan Korostelev 11 лет назад
Родитель
Сommit
a3d3d61422
2 измененных файлов с 2 добавлено и 2 удалено
  1. 1 1
      genjs.ml
  2. 1 1
      genpy.ml

+ 1 - 1
genjs.ml

@@ -1153,7 +1153,7 @@ let generate_type ctx = function
 			()
 			()
 		else if not c.cl_extern then
 		else if not c.cl_extern then
 			generate_class ctx c
 			generate_class ctx c
-		else if Meta.has Meta.JsRequire c.cl_meta then
+		else if (Meta.has Meta.JsRequire c.cl_meta) && (Meta.has Meta.ReallyUsed c.cl_meta) then
 			generate_require ctx c
 			generate_require ctx c
 		else if not ctx.js_flatten && Meta.has Meta.InitPackage c.cl_meta then
 		else if not ctx.js_flatten && Meta.has Meta.InitPackage c.cl_meta then
 			(match c.cl_path with
 			(match c.cl_path with

+ 1 - 1
genpy.ml

@@ -1920,7 +1920,7 @@ module Generator = struct
 	let gen_import ctx c =
 	let gen_import ctx c =
 		gen_pre_code_meta ctx c.cl_meta;
 		gen_pre_code_meta ctx c.cl_meta;
 
 
-		if Meta.has Meta.PythonImport c.cl_meta then begin
+		if (Meta.has Meta.PythonImport c.cl_meta) && (Meta.has Meta.ReallyUsed c.cl_meta) then begin
 			let _, args, mp = Meta.get Meta.PythonImport c.cl_meta in
 			let _, args, mp = Meta.get Meta.PythonImport c.cl_meta in
 
 
 			let class_name = match c.cl_path with
 			let class_name = match c.cl_path with