# File lib/mongoid/fields.rb, line 291
      def create_accessors(name, meth, options = {})
        field = fields[name]
        generated_field_methods.module_eval do
          if field.cast_on_read?
            define_method(meth) do
              field.deserialize(read_attribute(name))
            end
          else
            define_method(meth) do
              read_attribute(name).tap do |value|
                if value.is_a?(Array) || value.is_a?(Hash)
                  unless changed_attributes.include?(name)
                    changed_attributes[name] = value.clone
                  end
                end
              end
            end
          end
          define_method("#{meth}=") do |value|
            write_attribute(name, value)
          end
          define_method("#{meth}?") do
            attr = read_attribute(name)
            (options[:type] == Boolean) ? attr == true : attr.present?
          end
        end
      end