Đó chỉ là một đối số được đặt tên, trong trường hợp cờ là một đối số boolean. Tất cả điều này hoạt động vì :pretty
là cú pháp đường cho các cặp :pretty(True)
aka pretty => True
.
Bạn có thể sử dụng giá trị boolean
sub format($arg, Bool :$pretty = False) {
if $pretty { ... }
else { ... }
}
hoặc sử dụng sự hiện diện của nó đối với đa văn
multi format($arg) { ... }
multi format($arg, Bool :$pretty!) { ... }
Trong ví dụ đầu tiên, chúng tôi cung cấp một giá trị mặc định (mà không phải là thực sự cần thiết như giá trị không xác định boolifies để False
, nhưng nó được cho là 'điều phải làm' ngữ nghĩa), trong thứ hai, chúng tôi đã làm cho nó một tham số cần thiết bằng cách thêm !
.
Cũng lưu ý rằng tên đối số vẫn phải được phân cách bằng dấu phẩy, tức là bạn muốn sử dụng nó như
format :pretty, 'a b c';