Como validar variáveis ao usar attr_accessor no Ruby

Boa Tarde.

Galera, começei a estudar Ruby e muitas dúvidas surgiram.

Uma delas é a seguinte… no Java eu declaro uma variável privada e defino get’s e set’s, neste caso eu poderia usar o método set para validar a informação, por exemplo:


class People{

    private int age;

    public int getAge(){
        return age;
    }

    public void setAge(int age){
        if(age < 0){
           this.age = 0    
        }else{
           this.age = age;
        }
    }

}

Em ruby eu vi que existe um atalho para a criação desses métodos de acesso, por exemplo:


class People

     attr_accessor :age

end

Mas existe alguma forma de validar se a idade é menor que zero utilizando esse atalho, ou teria que implementar um método tipo esse:


class People
 
    def age=(age)
        @age = age
    end    

end

Dese já obrigado, aguardo.

O método attr_accessor dá uma interface simples para os getters and setters.

Para fazer essa validação que você quer, use esse método que você também colocou e altere para a forma necessária. Ele vai substituir o padrão do attr_accessor