@@ -2,14 +2,14 @@ package mill
22package twirllib
33
44import java .io .File
5+ import java .lang .reflect .Method
56import java .net .URLClassLoader
67
78import ammonite .ops .{Path , ls }
89import mill .eval .PathRef
910import mill .scalalib .CompilationResult
1011
1112import scala .io .Codec
12- import scala .util .Properties
1313
1414class TwirlWorker {
1515
@@ -42,26 +42,32 @@ class TwirlWorker {
4242 sourceDirectory : File ,
4343 generatedDirectory : File ,
4444 formatterType : String ,
45- additionalImports : Seq [String ] = Nil ,
46- constructorAnnotations : Seq [String ] = Nil ,
47- codec : Codec = Codec ( Properties .sourceEncoding) ,
48- inclusiveDot : Boolean = false ) {
45+ additionalImports : Seq [String ],
46+ constructorAnnotations : Seq [String ],
47+ codec : Codec ,
48+ inclusiveDot : Boolean ) {
4949 val o = compileMethod.invoke(null , source,
5050 sourceDirectory,
5151 generatedDirectory,
5252 formatterType,
53- defaultAdditionalImportsMethod.invoke(additionalImports ),
54- defaultConstructorAnnotationsMethod.invoke(constructorAnnotations ),
55- defaultCodecMethod.invoke(codec ),
56- defaultFlagMethod.invoke(inclusiveDot ))
53+ defaultAdditionalImportsMethod.invoke(null ),
54+ defaultConstructorAnnotationsMethod.invoke(null ),
55+ defaultCodecMethod.invoke(null ),
56+ defaultFlagMethod.invoke(null ))
5757 }
5858 }
5959 twirlInstanceCache = Some ((classloaderSig, instance))
6060 instance
6161 }
6262 }
6363
64- def compile (twirlClasspath : Agg [Path ], sourceDirectories : Seq [Path ], dest : Path )
64+ def compile (twirlClasspath : Agg [Path ],
65+ sourceDirectories : Seq [Path ],
66+ dest : Path ,
67+ additionalImports : Seq [String ],
68+ constructorAnnotations : Seq [String ],
69+ codec : Codec ,
70+ inclusiveDot : Boolean )
6571 (implicit ctx : mill.util.Ctx ): mill.eval.Result [CompilationResult ] = {
6672 val compiler = twirl(twirlClasspath)
6773
@@ -72,7 +78,11 @@ class TwirlWorker {
7278 compiler.compileTwirl(template.toIO,
7379 inputDir.toIO,
7480 dest.toIO,
75- s " play.twirl.api. $extFormat"
81+ s " play.twirl.api. $extFormat" ,
82+ additionalImports,
83+ constructorAnnotations,
84+ codec,
85+ inclusiveDot
7686 )
7787 }
7888 }
@@ -97,10 +107,10 @@ trait TwirlWorkerApi {
97107 sourceDirectory : File ,
98108 generatedDirectory : File ,
99109 formatterType : String ,
100- additionalImports : Seq [String ] = Nil ,
101- constructorAnnotations : Seq [String ] = Nil ,
102- codec : Codec = Codec ( Properties .sourceEncoding) ,
103- inclusiveDot : Boolean = false )
110+ additionalImports : Seq [String ],
111+ constructorAnnotations : Seq [String ],
112+ codec : Codec ,
113+ inclusiveDot : Boolean )
104114}
105115
106116object TwirlWorkerApi {
0 commit comments