Function.tupled(foo _)(getParams)
বা ডেভের পরামর্শ দেওয়া একটি।
সম্পাদনা:
আপনার মন্তব্যের প্রতিক্রিয়া জানাতে:
Foo কিছু শ্রেণীর নির্মাতা হতে হবে?
সেক্ষেত্রে এই কৌশলটি কাজ করবে না।
আপনি আপনার শ্রেণীর সহযোগী অবজেক্টে একটি কারখানা পদ্ধতি লিখতে পারেন এবং তারপরে apply
উল্লিখিত কৌশলগুলির মধ্যে একটি ব্যবহার করে এর পদ্ধতির দ্বিগুণ সংস্করণটি পেতে পারেন ।
scala> class Person(firstName: String, lastName: String) {
| override def toString = firstName + " " + lastName
| }
defined class Person
scala> object Person {
| def apply(firstName: String, lastName: String) = new Person(firstName, lastName)
| }
defined module Person
scala> (Person.apply _).tupled(("Rahul", "G"))
res17: Person = Rahul G
সঙ্গে case class
স্প্যানিশ ভাষায় আপনি একটি সঙ্গে একটি সহচর বস্তুর পেতে apply
বিনামূল্যে জন্য পদ্ধতি, এবং এইভাবে এই প্রযুক্তিটি আরো সঙ্গে ব্যবহার করার জন্য সুবিধাজনক case class
স্প্যানিশ ভাষায়।
scala> case class Person(firstName: String, lastName: String)
defined class Person
scala> Person.tupled(("Rahul", "G"))
res18: Person = Person(Rahul,G)
আমি জানি এটি প্রচুর কোড ডুপ্লিকেশন তবে হায়রে ... আমাদের কাছে ম্যাক্রো নেই (এখনও)! ;)