गा

गार्ड में Elixir

53 अभ्यास

गार्ड के बारे में

गार्ड पैटर्न मैचिंग के पूरक के रूप में इस्तेमाल किए जाते हैं। इनसे और भी जटिल जाँच संभव हो जाती है। जहाँ पैटर्न मैचिंग इस्तेमाल की जा सकती है, वहाँ गार्ड भी कुछ स्थितियों में, पर सभी में नहीं, इस्तेमाल किए जा सकते हैं। जैसे फंक्शन क्लॉज़ या केस क्लॉज़ में।

def empty?(list) when is_list(list) and length(list) == 0 do
  true
end
  • गार्ड when कीवर्ड से शुरू होते हैं, और उसके बाद एक बूलियन एक्सप्रेशन आता है।

  • गार्ड एक्सप्रेशन कुछ खास फंक्शन होते हैं, जो:

    • इन्हें प्योर होना चाहिए और किसी भी ग्लोबल स्थिति को नहीं बदलना चाहिए।
    • इन्हें सख्त true या false वैल्यू ही लौटानी चाहिए।
  • आम गार्ड की सूची Elixir के डॉक्युमेंटेशन में मिलती है। इनमें ये शामिल हैं:

  • आप defguard की मदद से अपने खुद के गार्ड बना सकते हैं।

    • Elixir के नेमिंग कन्वेंशन के अनुसार, गार्ड के नाम is_ से शुरू होने चाहिए।

      defmodule HTTP do
        defguard is_success(code) when code >= 200 and code < 300
      
        def handle_response(code) when is_success(code) do
          :ok
        end
      end
      
GitHub के ज़रिए संपादित करें यह लिंक नई विंडो या टैब में खुलता है।

गार्ड सीखिए

अभ्यास लॉक है

गार्ड पर अभ्यास करने के लिए 6 और अभ्यास अनलॉक कीजिए