ट्रैक
/
Rust
Rust
/
अभ्यास
/
अर्ध-संरचित लॉग
अर्ध-संरचित लॉग

अर्ध-संरचित लॉग

सीखने का अभ्यास

परिचय

एनम एन्यूमरेशन का छोटा रूप है। यह एक ऐसा टाइप है जो किसी डेटा की सभी संभावित वैल्यू को सीमित करता है। एक enum की संभावित वैल्यू को वेरिएंट कहा जाता है। एनम match और अन्य कंट्रोल फ्लो ऑपरेटर के साथ भी अच्छी तरह काम करता है। इससे आप अपने Rust प्रोग्राम में अपना आशय व्यक्त कर पाते हैं।

निर्देश

इस अभ्यास में आप सेमी-स्ट्रक्चर्ड लॉग संदेश बनाएँगे।

1. सेमी-स्ट्रक्चर्ड संदेश भेजिए

शुरुआत में आपको कुछ ऐसे फंक्शन मिलेंगे जो अभी अधूरे हैं, और यह एनम भी:

#[derive(Clone, PartialEq, Debug)]
pub enum LogLevel {
    Info,
    Warning,
    Error,
}

आपको इस तरह का लॉग संदेश भेजना है: "[<LEVEL>]: <MESSAGE>". इसके लिए आपको ऐसे फंक्शन बनाने होंगे जो लॉग लेवल से मेल खाते हों।

उदाहरण के लिए, नीचे दिया गया स्निपेट log फंक्शन का अपेक्षित आउटपुट दिखाता है।

log(LogLevel::Error, "Stack overflow")
// Returns: "[ERROR]: Stack overflow"

और info के लिए:

info("Timezone changed")
// Returns: "[INFO]: Timezone changed"

मज़े कीजिए!

2. वैकल्पिक अतिरिक्त अभ्यास

इस सूट में एक फीचर-गेटेड टेस्ट है। फीचर गेट आपके प्रोग्राम के कुछ हिस्सों का कंपाइल होना पूरी तरह बंद कर देते हैं। इनके बारे में आगे बताया जाएगा। अभी इतना जान लीजिए कि एक टेस्ट ऐसा भी है जो तभी बनता और चलता है जब आप टेस्ट चलाने का कोई खास तरीका इस्तेमाल करते हैं:

cargo test --features add-a-variant

इस टेस्ट का उद्देश्य आपको यह दिखाना है कि अपने एनम में एक वेरिएंट कैसे जोड़ा जाता है।

GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
Rust Exercism

अर्ध-संरचित लॉग शुरू करने के लिए तैयार हैं?

Exercism पर साइन अप कीजिए और Rust को 99 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।