Activerecord::base code

Ahoy,

Was looking through AR::base.

Could all this

class ActiveRecordError < StandardError #:nodoc:
end
class SubclassNotFound < ActiveRecordError #:nodoc:
end
class AssociationTypeMismatch < ActiveRecordError #:nodoc:
end
… (about 10 more)

be replaced with

[“SubclassNotFound”,“AssociationTypeMismatch”, etc…].each do
‘error_name’
class error_name < ActiveRecordError end
end

?

On 12/12/06, will [email protected] wrote:

class SubclassNotFound < ActiveRecordError #:nodoc:
end

Nope. Did you try writing a little script to see if it’s equivalent?

[ “A”, “B”, “C” ].each do |c|
class c < StandardError
end
end

… doesn’t work. Run it to see why.

But this does work;

[ “A”, “B”, “C” ].each do |c|
eval “class #{c} < StandardError
end”
end

… maybe
:wink: