2021-04-23 13:54:31 -04:00
|
|
|
# Option
|
2020-03-05 15:52:54 -05:00
|
|
|
|
2021-04-23 13:54:31 -04:00
|
|
|
Type Option represents an optional value: every Option is either Some and contains a value, or None, and does not.
|
|
|
|
Option types are very common in Rust code, as they have a number of uses:
|
|
|
|
- Initial values
|
|
|
|
- Return values for functions that are not defined over their entire input range (partial functions)
|
|
|
|
- Return value for otherwise reporting simple errors, where None is returned on error
|
|
|
|
- Optional struct fields
|
|
|
|
- Struct fields that can be loaned or "taken"
|
|
|
|
- Optional function arguments
|
|
|
|
- Nullable pointers
|
|
|
|
- Swapping things out of difficult situations
|
2020-03-05 15:52:54 -05:00
|
|
|
|
2021-04-23 13:54:31 -04:00
|
|
|
## Further Information
|
2020-03-05 15:52:54 -05:00
|
|
|
|
|
|
|
- [Option Enum Format](https://doc.rust-lang.org/stable/book/ch10-01-syntax.html#in-enum-definitions)
|
|
|
|
- [Option Module Documentation](https://doc.rust-lang.org/std/option/)
|
|
|
|
- [Option Enum Documentation](https://doc.rust-lang.org/std/option/enum.Option.html)
|