module ViewComponent::PolymorphicSlots::InstanceMethods

def set_polymorphic_slot(slot_name, poly_type = nil, *args, &block)

def set_polymorphic_slot(slot_name, poly_type = nil, *args, &block)
  slot_definition = self.class.registered_slots[slot_name]
  if !slot_definition[:collection] && get_slot(slot_name)
    raise ArgumentError, "content for slot '#{slot_name}' has already been provided"
  end
  poly_def = slot_definition[:renderable_hash][poly_type]
  set_slot(slot_name, poly_def, *args, &block)
end