Un type guard definito dall'utente è una funzione il cui tipo di ritorno è un predicato di tipo (x is T). Quando restituisce true, il compilatore restringe l'argomento a T nel codice chiamante — permettendoti di incapsulare controlli di runtime personalizzati.
