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

From Vigyanwiki
No edit summary
No edit summary
Line 4: Line 4:
== उदाहरण ==
== उदाहरण ==


* [[एल्म (प्रोग्रामिंग भाषा)]] में, इसे मानक पुस्तकालय द्वारा परिभाषित किया गया है {{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>
<वाक्यविन्यास प्रकाश लैंग = जंग>
स्थिरांक CAT_FOUND: बूल = सच;
 
एफएन मुख्य () {
     चलो परिणाम = pet_cat ();
     चलो परिणाम = pet_cat ();
     अगर परिणाम.is_ok () {
     अगर परिणाम.is_ok () {

Revision as of 00:07, 26 February 2023

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

उदाहरण


रस्ट

परिणाम वस्तु में is_ok() और is_err()विधियाँ हैं।

   चलो परिणाम = pet_cat ();
   अगर परिणाम.is_ok () {
       println! (बढ़िया, हम बिल्ली को पालतू बना सकते हैं!);
   } अन्य {
       println! (अरे नहीं, हम बिल्ली को पालतू नहीं बना सके!);
   }

}

fn pet_cat () -> परिणाम <(), स्ट्रिंग> {

   अगर CAT_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.