module AWS::S3::ACLObject::ClassMethods

def setter_option(method_name)

def setter_option(method_name)
  Core::MetaUtils.class_extend_method(self, :initialize) do |*args|
    opts = args.last || {}
    instance_variable_set("@#{method_name}", yield) if block_given?
    key = method_name.to_sym
    if opts.has_key?(key)
      value = opts[key]
      validate_input(method_name, value, "for #{method_name} option")
      self.send("#{method_name}=", value)
    end
    super(opts)
  end
end