रिजल्ट टाइप: Difference between revisions

From Vigyanwiki
m (Abhishek moved page परिणाम प्रकार to रिजल्ट टाइप without leaving a redirect)
No edit summary
 
(14 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{More citations needed|date=January 2021|bot=noref (GreenC bot)}}
कार्यात्मक प्रोग्रामिंग में, '''रिजल्ट टाइप''' एक मोनाडिक प्रकार होता है जिसमें इसका मान त्रुटि कोड होता है। जो असामान्यता हैंडलिंग का सहारा लिए बिना त्रुटियों का विधारण करने की विधि प्रदान करते हैं; जब कोई फ़ंक्शन विफल हो सकता है, रिजल्ट टाइप प्रकार का  पुनरावृत्ति करता है, प्रोग्रामर को अपेक्षित रिजल्ट टाइप तक पहुंच प्राप्त करने से पूर्व, सफलता या विफलता मार्ग  पर विचार करने के लिए विवश  किया जाता है; यह त्रुटिपूर्ण प्रोग्रामर धारणा की संभावना को समाप्त करता है।
[[कार्यात्मक प्रोग्रामिंग]] में, एक परिणाम प्रकार एक [[मोनाडिक प्रकार]] होता है जिसमें एक लौटा हुआ मान या एक त्रुटि कोड होता है। वे अपवाद हैंडलिंग का सहारा लिए बिना त्रुटियों को संभालने का एक सुंदर तरीका प्रदान करते हैं; जब कोई फ़ंक्शन जो विफल हो सकता है, परिणाम प्रकार लौटाता है, तो प्रोग्रामर को अपेक्षित परिणाम तक पहुंच प्राप्त करने से पहले, सफलता या विफलता पथों पर विचार करने के लिए मजबूर किया जाता है; यह एक त्रुटिपूर्ण प्रोग्रामर धारणा की संभावना को समाप्त करता है।


== उदाहरण ==
== उदाहरण ==


* [[एल्म (प्रोग्रामिंग भाषा)]] में, इसे मानक पुस्तकालय द्वारा परिभाषित किया गया है {{code|2=elm|1=type Result e v = Ok v {{!}} Err e}}.<ref>{{cite web |title=Result · An Introduction to Elm |url=https://guide.elm-lang.org/error_handling/result.html |website=guide.elm-lang.org}}</ref>
* [[एल्म (प्रोग्रामिंग भाषा)]] में, इसे मानक पुस्तकालय द्वारा परिभाषित किया गया है {{code|2=elm|1=type Result e v = Ok v {{!}} Err e}}<ref>{{cite web |title=Result · An Introduction to Elm |url=https://guide.elm-lang.org/error_handling/result.html |website=guide.elm-lang.org}}</ref>
* [[हास्केल (प्रोग्रामिंग भाषा)]] में, परिपाटी द्वारा {{code|Either|haskell}} इस उद्देश्य के लिए प्रकार का उपयोग किया जाता है, जिसे मानक पुस्तकालय द्वारा परिभाषित किया गया है {{code|1=data Either a b = Left a {{!}} Right b|2=haskell}}.<ref>{{cite web |title=Data.Either |url=https://hackage.haskell.org/package/base-4.14.0.0/docs/Data-Either.html |website=hackage.haskell.org}}</ref>
* [[हास्केल (प्रोग्रामिंग भाषा)]] में, सम्मेलन द्वारा {{code|Either|haskell}} इस उद्देश्य के लिए प्रकार का उपयोग किया जाता है, जिसे मानक पुस्तकालय द्वारा परिभाषित किया गया है {{code|1=data Either a b = Left a {{!}} Right b|2=haskell}}<ref>{{cite web |title=Data.Either |url=https://hackage.haskell.org/package/base-4.14.0.0/docs/Data-Either.html |website=hackage.haskell.org}}</ref>
* [[OCaml]] में, इसे मानक पुस्तकालय द्वारा परिभाषित किया गया है {{code|2=ocaml|1=type ('a, 'b) result = Ok of 'a {{!}} Error of 'b type}}.<ref>{{cite web |title=Error Handling – OCaml |url=https://ocaml.org/learn/tutorials/error_handling.html#Result-type |website=ocaml.org}}</ref>
* [[OCaml]] (ओकैमल) में, इसे मानक पुस्तकालय द्वारा परिभाषित किया गया है {{code|2=ocaml|1=type ('a, 'b) result = Ok of 'a {{!}} Error of 'b type}}<ref>{{cite web |title=Error Handling – OCaml |url=https://ocaml.org/learn/tutorials/error_handling.html#Result-type |website=ocaml.org}}</ref>
* [[जंग (प्रोग्रामिंग भाषा)]] में, इसे मानक पुस्तकालय द्वारा परिभाषित किया गया है {{code|2=rust|1=enum Result<T, E> { Ok(T), Err(E) } }}.<ref>{{cite web |title=std::result - Rust |url=https://doc.rust-lang.org/std/result/ |website=doc.rust-lang.org}}</ref>
* [[जंग (प्रोग्रामिंग भाषा)|रस्ट (प्रोग्रामिंग भाषा)]] में, इसे मानक पुस्तकालय द्वारा परिभाषित किया गया है {{code|2=rust|1=enum Result<T, E> { Ok(T), Err(E) } }}.<ref>{{cite web |title=std::result - Rust |url=https://doc.rust-lang.org/std/result/ |website=doc.rust-lang.org}}</ref>
* [[स्काला (प्रोग्रामिंग भाषा)]] में, मानक पुस्तकालय भी एक को परिभाषित करता है {{code|Either|scala}} प्रकार,<ref>{{cite web |title=Scala Standard Library 2.13.3 - scala.util.Either |url=https://www.scala-lang.org/api/current/scala/util/Either.html |website=www.scala-lang.org |accessdate=9 October 2020}}</ref> हालांकि स्काला में अधिक पारंपरिक अपवाद प्रबंधन भी है।
* [[स्काला (प्रोग्रामिंग भाषा)]] में, मानक पुस्तकालय द्वारा परिभाषित किया गया है {{code|Either|scala}} प्रकार,<ref>{{cite web |title=Scala Standard Library 2.13.3 - scala.util.Either |url=https://www.scala-lang.org/api/current/scala/util/Either.html |website=www.scala-lang.org |accessdate=9 October 2020}}</ref> चूँकि स्काला में अधिक पारंपरिक असामान्यता प्रबंधन भी है।
* [[स्विफ्ट (प्रोग्रामिंग भाषा)]] में, इसे मानक पुस्तकालय द्वारा परिभाषित किया गया है {{code|2=swift|1=@frozen enum Result<Success, Failure> where Failure : Error}}.<ref>{{cite web |title=Apple Developer Documentation |url=https://developer.apple.com/documentation/swift/result |website=developer.apple.com}}</ref>
* [[स्विफ्ट (प्रोग्रामिंग भाषा)]] में, इसे मानक पुस्तकालय द्वारा परिभाषित किया गया है {{code|2=swift|1=@frozen enum Result<Success, Failure> where Failure : Error}}<ref>{{cite web |title=Apple Developer Documentation |url=https://developer.apple.com/documentation/swift/result |website=developer.apple.com}}</ref>




=== जंग ===
=== रस्ट ===
परिणाम वस्तु में विधियाँ हैं <code>is_ok()</code> और <code>is_err()</code>.
रिजल्ट टाइप वस्तु में विधियाँ हैं।- <code>is_ok()</code> और <code>is_err()</code>
<वाक्यविन्यास प्रकाश लैंग = जंग>
    const CAT_FOUND: bool = true;
स्थिरांक CAT_FOUND: बूल = सच;


एफएन मुख्य () {
    fn main() {
    चलो परिणाम = pet_cat ();
        let result = pet_cat();
    अगर परिणाम.is_ok () {
  if result.is_ok() {
         println! (बढ़िया, हम बिल्ली को पालतू बना सकते हैं!);
         println!("Great, we could pet the cat!");
    } अन्य {
  } else {
        println! (अरे नहीं, हम बिल्ली को पालतू नहीं बना सके!);
    }
}


fn pet_cat () -> परिणाम <(), स्ट्रिंग> {
    println!("Oh no, we couldn't pet the cat!");
     अगर CAT_FOUND {
      }
        ठीक है(())
  }
    } अन्य {
      fn pet_cat() -> Result<(), String> {
        एरर (स्ट्रिंग :: फ्रॉम (बिल्ली कहीं नहीं मिली))
     if CAT_FOUND {
    }
 
}
  Ok(())
</वाक्यविन्यास हाइलाइट>
 
} else {
 
Err(String::from("the cat is nowhere to be found"))
 
  }
 
  }
<br />


== यह भी देखें ==
== यह भी देखें ==
Line 43: Line 46:
==संदर्भ==
==संदर्भ==
{{Reflist}}
{{Reflist}}
[[Category: कार्यात्मक प्रोग्रामिंग]]


[[Category: Machine Translated Page]]
[[Category:Created On 19/02/2023]]
[[Category:Created On 19/02/2023]]
[[Category:Machine Translated Page]]
[[Category:Pages with script errors]]
[[Category:Templates Vigyan Ready]]
[[Category:कार्यात्मक प्रोग्रामिंग]]

Latest revision as of 15:45, 27 October 2023

कार्यात्मक प्रोग्रामिंग में, रिजल्ट टाइप एक मोनाडिक प्रकार होता है जिसमें इसका मान त्रुटि कोड होता है। जो असामान्यता हैंडलिंग का सहारा लिए बिना त्रुटियों का विधारण करने की विधि प्रदान करते हैं; जब कोई फ़ंक्शन विफल हो सकता है, रिजल्ट टाइप प्रकार का पुनरावृत्ति करता है, प्रोग्रामर को अपेक्षित रिजल्ट टाइप तक पहुंच प्राप्त करने से पूर्व, सफलता या विफलता मार्ग पर विचार करने के लिए विवश किया जाता है; यह त्रुटिपूर्ण प्रोग्रामर धारणा की संभावना को समाप्त करता है।

उदाहरण


रस्ट

रिजल्ट टाइप वस्तु में विधियाँ हैं।- is_ok() और is_err()

   const CAT_FOUND: bool = true;
   fn main() {
       let result = pet_cat();
  if result.is_ok() {
       println!("Great, we could pet the cat!");
 } else {
   println!("Oh no, we couldn't pet the cat!");
     }
  }
      fn pet_cat() -> Result<(), String> {
   if CAT_FOUND {
  Ok(())
} else {
Err(String::from("the cat is nowhere to be found"))
 }
 }

यह भी देखें

संदर्भ

  1. "Result · An Introduction to Elm". guide.elm-lang.org.
  2. "Data.Either". hackage.haskell.org.
  3. "Error Handling – OCaml". ocaml.org.
  4. "std::result - Rust". doc.rust-lang.org.
  5. "Scala Standard Library 2.13.3 - scala.util.Either". www.scala-lang.org. Retrieved 9 October 2020.
  6. "Apple Developer Documentation". developer.apple.com.