Exceções: a função invalidArg
A função invalidArg
gera uma exceção de argumento.
Sintaxe
invalidArg parameter-name error-message-string
Comentários
O nome do parâmetro na sintaxe anterior é uma cadeia de caracteres com o nome do parâmetro cujo argumento era inválido. A cadeia de caracteres de mensagem de erro é uma cadeia de caracteres literal ou um valor do tipo string
. Ela passa a ser a propriedade Message
do objeto de exceção.
A exceção gerada por invalidArg
é uma exceção System.ArgumentException
. O código a seguir ilustra o uso de invalidArg
para gerar uma exceção.
let months = [| "January"; "February"; "March"; "April";
"May"; "June"; "July"; "August"; "September";
"October"; "November"; "December" |]
let lookupMonth month =
if (month > 12 || month < 1)
then invalidArg (nameof month) (sprintf "Value passed in was %d." month)
months[month - 1]
printfn "%s" (lookupMonth 12)
printfn "%s" (lookupMonth 1)
printfn "%s" (lookupMonth 13)
A saída é mostrada abaixo, seguida de um rastreamento de pilha (não mostrado).
December
January
System.ArgumentException: Value passed in was 13. (Parameter 'month')
Confira também
Colaborar conosco no GitHub
A fonte deste conteúdo pode ser encontrada no GitHub, onde você também pode criar e revisar problemas e solicitações de pull. Para obter mais informações, confira o nosso guia para colaboradores.