e003: No. more. nulls.

October 21, 2015 16:51 8.37 MB Downloads: 0

No More Nulls

Subject: Enumerated (enum) types, pattern matching, and meaningful return types.

Notes

Today’s episode discusses, in order:

  • Enumerated types, with an eye to the difference between structs and enums, and to the differences between enums in C and in Rust.
  • Pattern matching, with a focus on using them with enumerated types and some discussion about how they differ from switch blocks in C-like languages.
  • Using the Option and Result enumerated types with pattern matching to provide meaningful returns from functions safely.

Order

There is a specific order to the examples below, and it is not the automatically-alphabetized order rendered by rustdoc. Instead, you should work through in the sequence they appear in the source:

  1. RelatedishThings
  2. demonstrate_basic_enumeration
  3. demonstrate_match
  4. get_an_option
  5. demonstrate_option
  6. get_a_result
  7. demonstrate_result

Links

Follow/Support

  • New Rustacean:
    • Twitter: @newrustacean
    • App.net: @newrustacean
    • Patreon
    • Email: <!-- h='&#110;&#x65;&#x77;&#114;&#x75;&#x73;&#116;&#x61;&#x63;&#x65;&#x61;&#110;&#46;&#x63;&#x6f;&#x6d;';a='&#64;';n='&#104;&#x65;&#108;&#108;&#x6f;';e=n+a+h; document.write('<a h'+'ref'+'="ma'+'ilto'+':'+e+'" clas'+'s="em' + 'ail">'+e+'<\/'+'a'+'>'); // --> hello at newrustacean dot com
  • Chris Krycho