Corso di Raku / Avanzato / Subroutine / Approfondimento sulle subroutine MAIN / Exercises / Un flag da riga di comando

Soluzione: Un flag da riga di comando

Ecco una possibile soluzione per questo esercizio.

Codice

sub MAIN(Bool :$shout = False) {
    say $shout ?? 'HELLO' !! 'hello';
}

🦋 Puoi trovare il codice sorgente nel file boolean-flag.raku.

Output

$ raku boolean-flag.raku
hello

$ raku boolean-flag.raku --shout
HELLO

Commenti

  1. Un parametro con nome di tipo Bool diventa un flag: passare --shout imposta $shout a True, mentre ometterlo lascia il valore predefinito False.

  2. L’operatore ternario stampa quindi HELLO o hello di conseguenza. A differenza di un’opzione --nome=valore, un flag non accetta un valore: e la sua semplice presenza a contare.

Un flag da riga di comando   |   Un MAIN tipizzato