में फ़ंक्शन को समझना प्रश्न स्कैला सिंटैक्स के बारे में सख्ती से है, हालांकि इसमें अक्का से कुछ कोड शामिल है (उदाहरण के रूप में)।स्कैला
मैं स्कैला के लिए काफी नया हूं। यहाँ पर क्या हो रहा है
def transform[C]
(f: ExecutionContext ⇒ Materializer ⇒ Future[B] ⇒ Future[C]): Unmarshaller[A, C] =
Unmarshaller.withMaterializer { implicit ec ⇒ implicit mat ⇒ a ⇒ f(ec)(mat)(this(a)) }
जहां Unmarshaller.withMaterializer
def withMaterializer[A, B](f: ExecutionContext ⇒ Materializer => A ⇒ Future[B]): Unmarshaller[A, B]
के रूप में परिभाषित: अक्का के स्रोत कोड में खुदाई मैं निम्नलिखित बहुत अजीब विधि के साथ आया था? डरावनी फ़ंक्शन f: ExecutionContext => Materializer => Future[B] => Future[C]
क्या है। और मेरे लिए और अधिक अजीब लग रहा था implicit
एस: implicit ec => implicit mat => a => f(ec)(mat)(this(a))
का अनुक्रम था हालांकि withMaterializer
में अंतर्निहित पैरामीटर नहीं हैं।
ऐसे अनुक्रमों में अंतर्निहित अर्थ क्या है?
मुझे नहीं लगता कि आप अंतर्निहित मूल्यों का उपयोग करने के लिए पैरामीटर के बिना अपने 'एफ' को कॉल कर सकते हैं। यह केवल विधियों के लिए काम करता है। फ़ंक्शन शाब्दिक अर्थ में 'अंतर्निहित' का अर्थ है कि तर्क फ़ंक्शन बॉडी के अंदर अंतर्निहित है। –
आप सही हैं। 'एफ' डिफ़ॉल्ट पैरामीटर के साथ एक विधि के रूप में उपयोग करने योग्य नहीं है। मैंने बस उस सरल उदाहरण के साथ निर्माण को चित्रित करने की कोशिश की, लेकिन इसे संदर्भ से बाहर ले लिया। – laughedelic