Class Class
In: lib/facet/class/cattr.rb
Parent: Object

Methods

Public Instance methods

Creates a class-variable attr_accessor that can be accessed both on an instance and class level.

  require 'facet/class/attributes'

  class MyClass
    cattr_accessor :a
  end
  MyClass.a = 10
  MyClass.a           #=> 10
  mc = MyClass.new
  mc.a                #=> 10

Creates a class-variable attr_reader that can be accessed both on an instance and class level.

  require 'facet/class/attributes'

  class MyClass
    @@a = 10
    cattr_reader :a
  end
  MyClass.a           #=> 10
  mc = MyClass.new
  mc.a                #=> 10

Creates a class-variable attr_writer that can be accessed both on an instance and class level.

  require 'facet/class/attributes'

  class MyClass
    cattr_writer :a
    def a
      @@a
    end
  end
  MyClass.a = 10
  mc = MyClass.new
  mc.a                #=> 10

[Validate]