2016-11-11 7 views
10

मैं जंग में try! मैक्रो के उपयोग को चेन करने का एक तरीका ढूंढ रहा हूं और this pull request that implements the ? operator मिला।प्रश्न चिह्न ऑपरेटर है? कोशिश के बराबर! मैक्रो?

ऐसा लगता है कि यह विलय हो गया है, लेकिन मुझे अभी तक कोई दस्तावेज नहीं मिल रहा है। क्या यह try! मैक्रो के बराबर है या क्या महत्वपूर्ण अंतर हैं?

उत्तर

17

हां, ? ऑपरेटर try!() के बराबर है। ? अब स्थिर जंग 1.13, released on November 10, 2016 में है।

इस समय प्रलेखन का सबसे अच्छा स्रोत RFC 0243 लगता है। ध्यान दें कि आरएफसी में वर्णित catch अभी तक इस लेखन (issue) पर लागू नहीं किया गया है।

+0

मुझे याद है कि त्रुटियों के रूपांतरण में मैक्रो की तुलना में सीमाएं थीं; क्या अंततः हल हो गया था? –

+2

@MatthieuM। आरएफसी के अनुसार, यह वही त्रुटि रूपांतरण करता है: 'वर्तमान प्रयास की तरह!() मैक्रो, द? ऑपरेटर अपवाद प्रकार पर एक अंतर्निहित "अपस्टास्ट" भी करेगा। ' लेकिन यह अच्छा होगा, क्योंकि आरएफसी का केवल एक हिस्सा लागू किया गया है, वास्तव में भाषा में वास्तव में क्या है पर निश्चित दस्तावेज है। :-) –

+2

'? 'वाहक विशेषता का उपयोग करता है, और इसी कारण से, इसका प्रयास करें' try!()' का उपयोग करते समय थोड़ा अलग है; उत्तरार्द्ध 'परिणाम' विशिष्ट है। – bluss

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