मुझे लगता है कि आप भाग्य से बाहर हो, तो आप 1.8 का समर्थन करने के आप =>
उपयोग करने के लिए चाहते हैं। सामान्य रूप से, मैं उल्लेख करूंगा कि आपको 1.9:
- यदि कोई प्रतीक प्रतीक नहीं है तो आपको
=>
का उपयोग करना होगा। याद रखें कि किसी ऑब्जेक्ट (प्रतीक, तार, कक्षाएं, फ्लोट्स, ...) रूबी हैश में एक कुंजी हो सकती है।
- यदि आपको एक प्रतीक की आवश्यकता है जिसे आप उद्धृत करेंगे:
:'this.that'
।
- आप काफी कुछ भी के लिए MongoDB का उपयोग करते हैं आप
:$set => hash
लेकिन $set: hash
जैसी चीजों का उपयोग किया जाएगा एक सिंटैक्स त्रुटि है।
हमारे नियमित रूप से निर्धारित प्रोग्रामिंग करने के लिए वापस।
मैं क्यों कहता हूं कि आप भाग्य से बाहर हैं? हैश शाब्दिक वाक्यविन्यास (उनमें से दोनों) पार्सर में कड़ी मेहनत कर रहे हैं और मुझे नहीं लगता कि आपको अपने मणि से पार्सर को पैच करने में बहुत भाग्य होगा। Ruby 1.8.7's parse.y
इस में क्या कहना है:
assoc : arg_value tASSOC arg_value
{
$$ = list_append(NEW_LIST($1), $3);
}
;
और tASSOC
है =>
तो हैश शाब्दिक कठिन वायर्ड =>
उपयोग करने के लिए कर रहे हैं। 1.9.3's इस कहते हैं:
assoc : arg_value tASSOC arg_value
{
/*%%%*/
$$ = list_append(NEW_LIST($1), $3);
/*%
$$ = dispatch2(assoc_new, $1, $3);
%*/
}
| tLABEL arg_value
{
/*%%%*/
$$ = list_append(NEW_LIST(NEW_LIT(ID2SYM($1))), $2);
/*%
$$ = dispatch2(assoc_new, $1, $2);
%*/
}
;
हम वसा-तीर वाक्य रचना फिर से (arg_value tASSOC arg_value
) और जावास्क्रिप्ट शैली (tLABEL arg_value
) है; AFAIK, tLABEL
भी प्रतिबंध प्रतीकों में से किस तरह के (कोई :$set
, कोई :'this.that'
, ...) पर JavaScript शैली वाक्य रचना के साथ इस्तेमाल किया जा सकता का स्रोत है। वर्तमान ट्रंक parse.y
हैश अक्षर के लिए 1.9.3 से मेल खाता है।
तो हैश शाब्दिक वाक्य रचना पार्सर में कठिन वायर्ड है और आप वसा तीर के साथ फंस रहे हैं आप 1.8 का समर्थन करना चाहते हैं।
स्रोत
2012-03-14 01:22:25
रूबी 1.8 जल्द ही खत्म हो जाएगा। आपको इसके लिए समर्थन की आवश्यकता नहीं है। – sawa
क्या यह एक लोकप्रिय राय है? मैं निश्चित रूप से अन्य जेम लेखकों के इनपुट पर इनपुट की तलाश में हूं। मुझे पता है कि रुबी समुदाय के भीतर 1.9 ट्रेन पर सभी को पाने के लिए एक बड़ा धक्का है। मैं व्यक्तिगत रूप से 1.8 पीछे छोड़ने पर बुरा नहीं मानता। – JackCA