11
Vývoj / Re:FP a error handling
« Poslední příspěvek od mira9998 kdy 07. 01. 2026, 22:12:30 »Když už jsem se zmínil o prostředcích, které F# má pro zacházení s Result type, tak je to třeba toto computation expression (result je jméno builderu):
Lze ještě použít monadic composition nebo ROP-style function composition (to jsou všechny ty Result.bind/map/either a kyble dalších funkcí). Bez nich nebo bez výše uvedeného CE bychom měli tři vnořené větve pattern matchingu.
Kód: [Vybrat]
result
{
let! relative = relativePath preparedSource entry
let! dest =
Path.Combine(target, relative)
|> Option.ofNullEmpty
|> Option.toResult "Failed getting combined path"
return! moveEntry entry dest
}Lze ještě použít monadic composition nebo ROP-style function composition (to jsou všechny ty Result.bind/map/either a kyble dalších funkcí). Bez nich nebo bez výše uvedeného CE bychom měli tři vnořené větve pattern matchingu.
Poslední příspěvky