मुझे लगता है कि मुझे लगता है कि एक काफी मूल यार्ड मैक्रो उपयोग था जहां मेरे पास कई कार्यों के बीच साझा किए गए कई विकल्पों के साथ हैश संरचना है। मैं बस इस जगह को इस संरचना को दोहराने के लिए रोकने के लिए एक मैक्रो का उपयोग करने की उम्मीद कर रहा था, लेकिन ऐसा लगता है कि ऐसा नहीं लगता है।ड्रॉइंग यार्ड पैरामीटर
क्या मैं काम करने की उम्मीद थी:
# @macro [new] my_hash
# @param $1 [Hash,Array<Hash>] Inputted my_hash
# @option $1 [String] :a Value for A.
# @option $1 [String] :b Value for B.
# @option $1 [String] :c Value for C.
##
# my_func does stuff
# @macro my_hash h1
def my_func h1
end
##
# other_func does stuff
# @macro my_hash h2
def other_func h2, a, b
end
और h1 और h2 सही ढंग से दर्ज किया है। मुझे लगता है कि मुझे पता चला है कि कम से कम $ 1 ऐसा काम नहीं करता है बल्कि इसके बजाय फ़ंक्शन से ही लेता है लेकिन मैं दोनों पैरामीटर एच 1 को कॉल कर सकता हूं और मैक्रो में एच 1 के साथ $ 1 को प्रतिस्थापित कर सकता हूं और मुझे अभी भी वह नहीं मिलता है जो मैं चाहता हूं ।
http://rubydoc.info/docs/yard/file/docs/Tags.md#macro पर "सरल मैक्रोज़ परिभाषित करना" उदाहरण इंगित करेगा कि मैं यह कर सकता हूं (ध्यान दें कि मुझे @! मैक्रो और कुछ के बिना उदाहरण मिलते हैं लेकिन न ही काम करने लगते हैं)।
मुझे यार्ड के बारे में बहुत कुछ नहीं पता लेकिन क्या यह अभी काम नहीं करता है? क्या ऐसा कुछ ऐसा है जो मैं अपना परिणाम प्राप्त करने के लिए कर सकता हूं? क्या कोई डिबगिंग फ़ंक्शन है जो इसे समझाएगा क्योंकि यार्ड सर्वर कंसोल में कोई त्रुटि नहीं आती है?
धन्यवाद
मुझे दस्तावेज को समझ में नहीं आता है, लेकिन एसओ सवाल [यार्डोक '@ मैक्रो 'के रजिस्टरों पर इटरेटिंग] (http://stackoverflow.com/questions/10343634/iterating-over-the-registers- ऑफ-ए-यार्डोक-मैक्रो) प्रासंगिक दिखता है। –