Not: Some x
değeri, bir tür değil. Kitaplık tarafından döndürülen tür, string option
olacaktır. Değerin her zaman Some x
gibi göründüğünü biliyorsanız, bu başka bir soru. Ancak kütüphane yazarı bunun için sadece string
türünü kullanabileceğinden, oldukça olası değildir. Özel olarak bir seçenek türü kullanın, böylece bir değerin yokluğunu temsil etmek için None
'u kullanabilirsiniz.
'a option
türünün her tür için 'a
aynı semantiklere sahip olduğunu söyleyebilirim. 'a option
tipi, mevcut veya bulunmayan türün değerini temsil eder. Değer varsa, Some x
formunu alır, burada x
türü bir değerdir. Değer mevcut değilse, None
formunu alır.
tip
string option
değeri
None
olabilir, ya da
Some ""
olabilir, ya da herhangi bir dize
"xxx"
için
Some "xxx"
olabilir. Özel bir dizeye özgü anlam yok.
Bir örnek, bölümü gerçekleştiren ve sonucu dizeye geri veren '' div_string: int -> int -> dize seçeneği '' olabilir. Eğer ikinci argüman '' '' ise, fonksiyon '' string opsiyon'' türünde '' None'' itebilir. Bu sonuç geçersiz bir işlemin yapıldığını gösterir. – objmagic
Bu türün tanımı: 'type 'a option = None | Bazıları 'a'. –