RX0721

डोमेन: निष्पादन

त्रुटि संदेश

data.put[%s, …] अस्वीकृत: %s

संदेश में %s उस मान की जगह है जिसे इंजन त्रुटि उठाते समय भरता है।

कहानी

आपने data.put से ऐसा लेखन किया जिसमें या तो holder सूची है या मान बिना label का है, और इंजन ने मना कर दिया। यहाँ बात सरल है। put हर सदस्य को उसकी कुंजी के नीचे उतारता है। तो उसे दो चीज़ें चाहिए: कुंजी वाला holder और label वाले सदस्य। सूची में कुंजियाँ होती ही नहीं, वह सिर्फ़ वस्तुएँ रखती है, और उसका अपना द्वार data.add है। दूसरी ओर, अगर आप ऐसा मान देते हैं जिस पर कोई label नहीं, तो उसे उतारने को कोई कुंजी नहीं मिलती। उदाहरण: data.put[names, 'Ana'] में कोई label नहीं, या data.put[xs, a: 1] जहाँ xs सूची है। जैसे डाकघर में पत्र बिना पते के दें, या किसी ऐसी पेटी में जिसमें पते वाले खाने ही नहीं हैं। इलाज: सूची के लिए data.add इस्तेमाल कीजिए, और put में label के साथ मान दीजिए, जैसे data.put[users, ana: 'Ana']। संदेश का दूसरा स्थान बताता है कि दोनों में से कौन-सी बात हुई।

पाठ Rush इंजन की त्रुटि सूची से लिया गया है।