Raku-Kurs / Fortgeschritten / Subroutinen / Mehr zu MAIN-Unterprogrammen / Exercises / Ein Befehlszeilen-Flag

Lösung: Ein Befehlszeilen-Flag

Hier ist eine mögliche Lösung der Aufgabe.

Code

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

🦋 Den Quellcode finden Sie in der Datei boolean-flag.raku.

Ausgabe

$ raku boolean-flag.raku
hello

$ raku boolean-flag.raku --shout
HELLO

Kommentare

  1. Ein benannter Bool-Parameter wird zu einem Flag: Die Angabe von --shout setzt $shout auf True, während das Weglassen den Standardwert False beibehält.

  2. Der ternäre Operator gibt dann entsprechend HELLO oder hello aus. Im Gegensatz zu einer --name=wert-Option nimmt ein Flag keinen Wert an — allein seine Anwesenheit zählt.

Kursnavigation

Ein Befehlszeilen-Flag   |   Ein typisiertes MAIN