module ActiveLdap::Associations::ClassMethods
def association_writer(name, &make_association)
def association_writer(name, &make_association) class_eval(<<-EOM, __FILE__, __LINE__ + 1) def #{name}=(new_value) association = defined?(@#{name}) ? @#{name} : nil association ||= __make_#{name} association.replace(new_value) @#{name} = new_value.nil? ? nil : association @#{name} end EOM end