Scala: каррированные конструкторы

У меня есть следующий класс Scala:

class Person(var name : String, var age : Int, var email : String)

Я хотел бы использовать конструктор Person в качестве каррированной функции:

def mkPerson = (n : String) => (a : Int) => (e : String) => new Person(n,a,e)

Это работает, но есть ли другой способ выполнить этот? Такой подход кажется немного утомительным и подверженным ошибкам. Я мог бы представить что-то вроде Function.curried, но только для конструкторов.

20
задан Chris Eidhof 5 October 2010 в 10:18
поделиться