2012-02-25 30 views
9

मैं रूबी दस्तावेज को देख रहा था, और सोच रहा हूं कि सब कुछ एक वस्तु है तो 'कीवर्ड' ऑब्जेक्ट्स भी सही हैं? और यदि हां, तो वे रूबी में कहां परिभाषित हैं?रूबी में परिभाषित कीवर्ड कहां हैं?

निम्नलिखित पृष्ठ ने मुझे पूरी तरह उलझन में डाल दिया क्योंकि यह ऑब्जेक्ट को सभी कीवर्ड के साथ दिखाता है, हालांकि यह सभी वर्गों द्वारा उपयोग की जाने वाली आधिकारिक वस्तु नहीं है, क्या यह किसी भी तरह से एक अलग वर्ग से मिश्रित है ??

http://ruby-doc.org/docs/keywords/1.9/Object.html

मुझे लगता है कि वहाँ उपरोक्त प्रश्नों के बहुत सारे हैं, मुख्य एक है: माणिक कीवर्ड माणिक में कैसे मिलता है?

+1

यदि आप उस अर्थ में "सबकुछ वस्तु है" लेते हैं, तो यह सच नहीं है। कीवर्ड ऑब्जेक्ट्स नहीं हैं। और एक और चीज जो एक वस्तु नहीं है जिसे मैं शुरुआत में भ्रमित कर रहा था वह एक ब्लॉक है। ब्लॉक या तो वस्तुएं नहीं हैं। – sawa

उत्तर

20

कीवर्ड ऑब्जेक्ट्स नहीं हैं लेकिन पार्सर में परिभाषित हैं जो रूबी स्रोत में parse.y में पाए जा सकते हैं। यहाँ है कि फाइल से प्रासंगिक हिस्सा है:

reswords : keyword__LINE__ | keyword__FILE__ | keyword__ENCODING__ 
     | keyword_BEGIN | keyword_END 
     | keyword_alias | keyword_and | keyword_begin 
     | keyword_break | keyword_case | keyword_class | keyword_def 
     | keyword_defined | keyword_do | keyword_else | keyword_elsif 
     | keyword_end | keyword_ensure | keyword_false 
     | keyword_for | keyword_in | keyword_module | keyword_next 
     | keyword_nil | keyword_not | keyword_or | keyword_redo 
     | keyword_rescue | keyword_retry | keyword_return | keyword_self 
     | keyword_super | keyword_then | keyword_true | keyword_undef 
     | keyword_when | keyword_yield | keyword_if | keyword_unless 
     | keyword_while | keyword_until 
     ; 

आप रूबी पार्सर के बारे में अधिक जानना चाहते हैं,, रूबी Kaigi से 2011

इसके अलावा RubyConf 2009 या Parse.y famtour से प्रस्तुति Hacking parse.y को देखने का एक बहुत चाहते हैं वे विधियां जो हर जगह उपलब्ध हैं (जैसे puts) Kernel मॉड्यूल में परिभाषित हैं।

संपादित करें: list of key words in the documentation भी है, धन्यवाद @antinome यह इंगित करने के लिए धन्यवाद।

+0

महान जानकारी के लिए धन्यवाद ... lol ... रुबी कैगी 2011 से अच्छी प्रस्तुति, मुझे अपने जापानी पर ब्रश करने की ज़रूरत है। :) – Kamilski81

+0

इसके लायक होने के लिए, यहां रूबी दस्तावेज कीवर्ड सूचीबद्ध करता है: https://github.com/ruby/ruby/blob/trunk/doc/keywords.rdoc – antinome

+0

@antinome धन्यवाद, उत्तर में शामिल है। :) –

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