मैंने सुना है कि कोड में tuples के माध्यम से रिकॉर्ड निर्दिष्ट करना एक बुरा अभ्यास है: मुझे हमेशा सादा tuples {record_name, value1, value2, something}
के बजाय रिकॉर्ड फ़ील्ड्स (#record_name{record_field = something}
) का उपयोग करना चाहिए।कैसे खरीदें Iets: Erlang में एक रिकॉर्ड के खिलाफ मैच?
लेकिन मैं ईटीएस तालिका के खिलाफ रिकॉर्ड कैसे मेल करूं? अगर मैं रिकॉर्ड के साथ एक मेज है, मैं केवल निम्नलिखित के साथ मेल कर सकते हैं:
ets:match(Table, {$1,$2,$3,something}
यह स्पष्ट है कि एक बार मैं रिकॉर्ड परिभाषा करने के लिए कुछ नए क्षेत्रों को जोड़ने के इस पैटर्न मैच काम करना बंद कर देगा।
इसके बजाय, मैं कुछ इस तरह उपयोग करना चाहते हैं:
ets:match(Table, #record_name{record_field=something})
दुर्भाग्य से, यह एक खाली सूची देता है।