generated at
RustのOption<T>型

Option<T>
Some(T) None
rs
enum Option<T> { None, Some(T), }
不在の可能性を示す
値を取り出す方法が場合分けしかないので、Noneであるときの処理をプログラマに強制させることができる
unwrap() は場合分けを抽象化し、Noneのときはpanicを起こす
機械語レベルではNoneはnull pointerになる
Option型には ? は使えない
使いたい場合は ok_or などを使って、Result型に変換してから使う


methods
ok_or<E>(self, err: E)
OptionをResultに変換する
OptionはErrを持っていないので、引数にErrを書いて渡してあげる
and_then(clousre)
Okの中身を取り出して引数のクロージャに渡す
map()に似ており、map()はSomeしか返せないが、これはNoneも返すことができる
ok_or_else()
関数を渡す



参考