का उपयोग करके मानचित्र के बाकी हिस्सों को कैप्चर करना, मैं एक मानचित्र में एक विशिष्ट कुंजी पर एक साथ मिलान करना चाहता हूं, और उस मानचित्र के बाकी हिस्सों को कैप्चर करें। मुझे उम्मीद थी कुछ इस तरह काम करेगा:इलीक्सिर: पैटर्न मिलान
iex(10)> %{"nodeType" => type | rest} = %{"nodeType" => "conditional", "foo" => "bar"}
** (CompileError) iex:10: cannot invoke remote function IEx.Helpers.|/2 inside match
लक्ष्य कार्य करता है जो एक नक्शा, नक्शे के क्षेत्रों में से एक पर पैटर्न मैच लेने का एक सेट लिखते हैं, और नक्शे के बाकी के बारे में कुछ परिवर्तनों को करने के लिए है।
def handle_condition(%{"nodeType" => "condition" | rest}) do
# do something with rest
done
def handle_expression(%{"nodeType" => "expression" | rest}) do
# do something with rest
done
लेकिन ऐसा लगता है कि मुझे नोड टाइप टाइप करने के लिए कैली की आवश्यकता होगी जब तक कि मुझे कुछ याद न हो।
मैं इस वाक्य रचना चाहते हैं। मैं बस एक ही सवाल पूछने वाला था और वास्तव में उसी वाक्यविन्यास का अनुमान लगाया था 'def update_document (% {id: id, संशोधन: संशोधन | आराम}) # couchdb सामग्री यहाँ अंत' –
सामान्य नोट, फ़ील्ड ' नोड टाइप टाइप 'इंगित करता है कि आप केवल एक मानचित्र के विपरीत' संरचना 'का उपयोग करके बेहतर सेवा कर सकते हैं। देखें http://elixir-lang.github.io/getting-started/structs.html अपना सटीक उपयोग केस जानने के बिना, मैं निश्चित रूप से राज्य नहीं कर सकता, लेकिन चित्रित उपयोग एक कोड गंध है जो आप सबसे अच्छे उपकरण का उपयोग नहीं कर रहे हैं उपलब्ध। –