What's the meaning of @@?

I’m reading several files from RubyOnRails package, and this code:

@@default_error_messages = {
  :inclusion => "is not included in the list",
  :exclusion => "is reserved",
  :invalid => "is invalid",
  :confirmation => "doesn't match confirmation",
  :accepted  => "must be accepted",
  :empty => "can't be empty",
  :blank => "can't be blank",
  :too_long => "is too long (maximum is %d characters)",
  :too_short => "is too short (minimum is %d characters)",
  :wrong_length => "is the wrong length (should be %d characters)",
  :taken => "has already been taken",
  :not_a_number => "is not a number",
  :greater_than => "must be greater than %d",
  :greater_than_or_equal_to => "must be greater than or equal to 

%d",
:equal_to => “must be equal to %d”,
:less_than => “must be less than %d”,
:less_than_or_equal_to => “must be less than or equal to %d”,
:odd => “must be odd”,
:even => “must be even”
}

What’s the meaning of @@? Double instantiated?


Regards,

Luiz Vitor Martinez C.
cel.: (11) 8187-8662
blog: rubz.org
engineer student at maua.br

Hi–

On Sat, 12 Jul 2008, Luiz Vitor Martinez C. wrote:

 :too_long => "is too long (maximum is %d characters)",
 :even => "must be even"

}

What’s the meaning of @@? Double instantiated?

@@var is a class variable. It’s got a somewhat odd visibility pattern:
it’s visible to the class it’s defined in, all subclasses of that
class, and all instances of the above. It’s a quick-‘n’-easy way to
store data that both a class and its instances can see, but it’s got a
kind of quasi-global (or hierarchy-global) quality to it that makes it
a bit error-prone.

David


Rails training from David A. Black and Ruby Power and Light:
Intro to Ruby on Rails July 21-24 Edison, NJ
Advancing With Rails August 18-21 Edison, NJ
See http://www.rubypal.com for details and updates!

On 12 Jul 2008, at 21:20, Luiz Vitor Martinez C. wrote:

What’s the meaning of @@? Double instantiated?

Nope. http://www.zenspider.com/Languages/Ruby/QuickRef.html#16

Fred

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs