2014-12-13 6 views
27

जंग के कामों के बारे में महसूस करने के लिए, मैंने Iota नामक एक छोटे से टर्मिनल-आधारित टेक्स्ट एडिटर को देखने का निर्णय लिया। मैं भंडार क्लोन और cargo build केवल कही जाने वाली सबसे भाग गया:एक क्रेट विशेषता क्या है और मैं इसे कहां जोड़ूं?

error: *if let* syntax is experimental 

help: add #![feature(if_let)] to the crate attributes to enable 

मैं टोकरा विशेषताओं के #![feature(if_let)] जोड़ने के लिए कहाँ चाहिए?

+2

एक साइड-नोट के रूप में, नए (रात के) जंग के निर्माण ने इस सुविधा को डिफ़ॉल्ट रूप से सक्षम किया है, इसलिए जंग को अद्यतन करने से आपकी समस्या भी निकल जाएगी। – Shepmaster

उत्तर

24

एक क्रेट विशेषता एक विशेषता (#[...]) है जो संलग्न संदर्भ (#![...]) पर लागू होती है। यह विशेषता अपने टोकरा जड़ के शीर्ष में जोड़ा जाना चाहिए, इस प्रकार संदर्भ टोकरा ही है:

#![attribute_name] 
#![attribute_name(arg1, ...)] 

आप किसी लाइब्रेरी बना रहे हैं, टोकरा जड़ एक फ़ाइल lib.rs बुलाया जाएगा। यदि आप कोई एप्लिकेशन बना रहे हैं, तो क्रेट रूट आपके द्वारा बनाई गई मुख्य .rs फ़ाइल होगी।


The Rust Programming Language, first edition के बारे में "टोकरा-केवल जिम्मेदार बताते हैं" सामान्य रूप में गुण, और Rust Reference वार्ता के बारे में थोड़ा बात करती है। The Unstable Book में फीचर झंडे की एक सूची और उनके द्वारा किए गए कार्यों पर संक्षिप्त दस्तावेज शामिल है।

कई अलग अलग टोकरा गुण होते हैं, लेकिन feature टोकरा विशेषता (#![feature(feature1, feature2)]) केवल एक रात संकलक के संस्करण में इस्तेमाल किया जा सकता है। स्थिर जंग संस्करणों में अस्थिर सुविधाओं का उपयोग करने की अनुमति नहीं है।

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