I have scala functions called "run1" and "run2" that take 3 parameters. When I apply them, I want to provide an anonymous function with implicit parameters. It does not work in both cases in the examples below. I want to know if
- Is it possible?
- If possible, what is the syntax?
object Main extends App { type fType = (Object, String, Long) => Object def run1( f: fType ) { f( new Object, "Second Param", 3) } run1 { implicit (p1, p2, p3) => // fails println(p1) println(p2) println(p3) new Object() } def run2( f: fType ) { val fC = f.curried fC(new Object)("Second Param")(3) } run2 { implicit p1 => implicit p2 => implicit p3 => // fails println(p1) println(p2) println(p3) new Object() } }
scala
Michael
source share