module ViewComponent::Slotable

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] && (defined?(@__vc_set_slots) && @__vc_set_slots[slot_name])
    raise ContentAlreadySetForPolymorphicSlotError.new(slot_name)
  end
  poly_def = slot_definition[:renderable_hash][poly_type]
  set_slot(slot_name, poly_def, *args, &block)
end