En Ruby, ¿cómo se crea una constante de clase privada? (es decir, uno que es visible dentro de la clase, pero no en el exterior)Cómo puedo hacer constantes de clases privadas en Ruby
class Person
SECRET='xxx' # How to make class private??
def show_secret
puts "Secret: #{SECRET}"
end
end
Person.new.show_secret
puts Person::SECRET # I'd like this to fail
Por supuesto, "privado" en Ruby no significa lo que significa en la mayoría de los idiomas . Ruby no es tan grande en la clandestinidad, así que si quieres acceder a algo, siempre puedes (pero tal vez no con la sintaxis más obvia). Ruby's 'private' solo dice que no puede ir precedido de un punto (' .') (que supongo que también es una pista de por qué no funcionará en '::') – Amadan
Por las dudas. Ruby 1.9.3 tiene ahora constantes privadas. – whitequark