Skip to content
Browse files

Indentation, superfluous self

  • Loading branch information...
1 parent e094940 commit fe7d3dbb023f7eb08cfa1860ed29ab2cddc92ddb @jeremy jeremy committed Mar 24, 2009
Showing with 25 additions and 25 deletions.
  1. +25 −25 activesupport/lib/active_support/core_ext/class/delegating_attributes.rb
View
50 activesupport/lib/active_support/core_ext/class/delegating_attributes.rb
@@ -1,31 +1,25 @@
-# These class attributes behave something like the class
-# inheritable accessors. But instead of copying the hash over at
-# the time the subclass is first defined, the accessors simply
-# delegate to their superclass unless they have been given a
-# specific value. This stops the strange situation where values
-# set after class definition don't get applied to subclasses.
class Class
def superclass_delegating_reader(*names)
- class_name_to_stop_searching_on = self.superclass.name.blank? ? "Object" : self.superclass.name
+ class_name_to_stop_searching_on = superclass.name.blank? ? "Object" : superclass.name
names.each do |name|
- class_eval <<-EOS
- def self.#{name} # def self.only_reader
- if defined?(@#{name}) # if defined?(@only_reader)
- @#{name} # @only_reader
- elsif superclass < #{class_name_to_stop_searching_on} && # elsif superclass < Object &&
- superclass.respond_to?(:#{name}) # superclass.respond_to?(:only_reader)
- superclass.#{name} # superclass.only_reader
- end # end
- end # end
- def #{name} # def only_reader
- self.class.#{name} # self.class.only_reader
- end # end
- def self.#{name}? # def self.only_reader?
- !!#{name} # !!only_reader
- end # end
- def #{name}? # def only_reader?
- !!#{name} # !!only_reader
- end # end
+ class_eval(<<-EOS, __FILE__, __LINE__)
+ def self.#{name} # def self.only_reader
+ if defined?(@#{name}) # if defined?(@only_reader)
+ @#{name} # @only_reader
+ elsif superclass < #{class_name_to_stop_searching_on} && # elsif superclass < Object &&
+ superclass.respond_to?(:#{name}) # superclass.respond_to?(:only_reader)
+ superclass.#{name} # superclass.only_reader
+ end # end
+ end # end
+ def #{name} # def only_reader
+ self.class.#{name} # self.class.only_reader
+ end # end
+ def self.#{name}? # def self.only_reader?
+ !!#{name} # !!only_reader
+ end # end
+ def #{name}? # def only_reader?
+ !!#{name} # !!only_reader
+ end # end
EOS
end
end
@@ -40,6 +34,12 @@ def self.#{name}=(value) # def self.only_writer=(value)
end
end
+ # These class attributes behave something like the class
+ # inheritable accessors. But instead of copying the hash over at
+ # the time the subclass is first defined, the accessors simply
+ # delegate to their superclass unless they have been given a
+ # specific value. This stops the strange situation where values
+ # set after class definition don't get applied to subclasses.
def superclass_delegating_accessor(*names)
superclass_delegating_reader(*names)
superclass_delegating_writer(*names)

0 comments on commit fe7d3db

Please sign in to comment.
Something went wrong with that request. Please try again.