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.