Como se escreve métodos acessadores personalizados no Perl6?

Como se escreve métodos acessadores personalizados no Perl6?

Se eu tiver essa classe:

class Wizard {
    has Int $.mana is rw;
}

Eu posso fazer isso:

my Wizard $gandalf .= new;
$gandalf.mana = 150;

Digamos que eu queira adicionar uma pequena verificação a um setter na minha classe Perl6 sem abrir mão do$gandalf.mana = 150; notação (em outras palavras, não quero escrever isso:$gandalf.setMana(150);) O programa deve morrer, se tentar definir uma mana negativa. Como eu faço isso? A documentação do Perl6 menciona apenas que é possível escrever acessadores personalizados, mas não diz como.

questionAnswers(2)

yourAnswerToTheQuestion