2011-08-07 13 views
6

दस्तावेज़ीकरण लिखते समय मैं एक उदाहरण फ़ील्ड का संदर्भ कैसे दे सकता हूं?दस्तावेज़ीकरण में उदाहरण विधियों का संदर्भ कैसे लें?

इस कोड पर विचार करें:

object Foo { 
    val foo = 42 
} 

class Foo { 
    val foo = 42 
} 

जावा में, एक उदाहरण विधि के लिए "स्थिर" विधि के लिए Foo.foo और Foo#foo का प्रयोग करेंगे।

लेकिन स्काला # में पहले से ही पथ पर निर्भर प्रकार के लिए लिया जाता है और

class Foo { 
    class foo 
    def foo = 42 
} 

कानूनी कोड है, इसलिए मैं स्पष्ट रूप से यह उल्लेख करने के लिए नहीं कर सकते।

क्या कोई सम्मेलन है कि यह कैसा दिखना चाहिए?

उत्तर

3

कठिन। शायद अंग्रेजी की तरह, Foo's foo में? मैं # की अस्पष्टता को याद कर चुका था। यह अभी भी मेरी पसंदीदा पसंद है, हालांकि, अस्पष्टता केवल संदर्भ की अनुपस्थिति में मौजूद है। किसी प्रकार का जिक्र करते समय, # का एक अर्थ है। किसी मान या विधि का जिक्र करते समय, # में दूसरा है।

चूंकि प्रकार और विधियां/मान नेमस्पेस साझा नहीं करते हैं, इसलिए मुझे यहां प्रासंगिकता की अस्पष्टता दिखाई नहीं दे रही है।

+0

मैं इस उद्देश्य के लिए भी # का उपयोग करता हूं। – retronym

+0

मुख्य समस्या यह है कि ScalaDoc से संबंधित एक संबंधित यूआरएल कैसा दिखना चाहिए? एक यूआरएल में "संदर्भ" एम्बेड करने का कोई तरीका नहीं है ... एक स्पष्ट प्रतीक चुनकर। और अगर हमें पहले से ही एक प्रतीक का आविष्कार करना है तो हम इसे दस्तावेज़ीकरण में भी इस्तेमाल कर सकते हैं। – soc

+0

@soc ठीक है, लेकिन ScalaDoc में 'Foo.foo' क्या संदर्भित करता है? 'ऑब्जेक्ट फू' में 'foo' टाइप करें, या' ऑब्जेक्ट फू' में' def foo' 'करने के लिए? यह समस्या पहले से मौजूद है। यह देखते हुए केवल तभी होता है जब लोग समान प्रकार के पहचानकर्ता के साथ नाम प्रकार और गैर-प्रकार के सदस्यों के रूप में इतने क्रॉस होते हैं, मैं कहता हूं कि हम इसे अनदेखा करते हैं - या दोनों के लिए हल करते हैं। इसके अलावा ... iirc, '#' में एक यूआरएल में विशेष अर्थ है, इसलिए हम वास्तव में यूआरएल पर इसका इस्तेमाल नहीं कर सकते हैं, क्या हम कर सकते हैं? –

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