none.alt(some(0)) // Some(0)
opt(1).alt(some(0)) // Some(1)
none.alt(none) // None
some(1).alt(none) // Some(1)
It can be used to pick first from given possibly missing alternatives.
type Handler = (_: number) => void;
const userHandler: Opt<Handler> = opt(a => console.log('user handling', a));
const systemHandler: Opt<Handler> = opt(a => console.log('system handling', a));
const backupHandler: Opt<Handler> = opt(a => console.log('backup handling', a));
const panicHandler: Handler = a => console.log('PANIC handling', a);
const handler =
  userHandler
    .alt(systemHandler)
    .alt(backupHandler)
    .orElse(panicHandler);
handler(250 + 64); // prints "user handling 314"
Return
thisfor Some,deffor None. It represents an alternative on Opts.