2011-11-21 17 views
5

Erlang खोल में:आदेश क्यों है: fetch/2 पागल हो रहा है?

> orddict:fetch(b, [{d, 2}, {a, 1}, {b,5}, {c,9}]). 
** exception error: no function clause matching 
        orddict:fetch(b,[{d,2},{a,1},{b,5},{c,9}]) 

लेकिन

> orddict:fetch(b, [{a, 1}, {b,5}, {c,9}]). 
5 

मैं यहाँ क्या याद आ रही है?

संदर्भ: orddict:fetch/2

The orddict docsorddict() = [{Key :: term(), Value :: term()}] के रूप में एक orddict का वर्णन।

+0

@downvoter: टिप्पणी करने की देखभाल? – nmichaels

उत्तर

16

कुंजी इस समस्या का समाधान करने के लिए the docs में है:

सूची कुंजी के बाद आदेश दिया है।

उपयोग orddict:from_list/1{key, value} जोड़े की एक नियमित सूची से कन्वर्ट करने के लिए।

> orddict:fetch(b, orddict:from_list([{d, 2}, {a, 1}, {b,5}, {c,9}])). 
5 
+5

बहुत सच है, इसलिए नाम। – rvirding

संबंधित मुद्दे