code: func controllerTypeToClass(c types.BaseVirtualController) (string, error) {
  	var t string
  	switch c.(type) {
  	case *types.VirtualIDEController:
  		t = SubresourceControllerTypeIDE
  	case *types.VirtualAHCIController:
  		t = SubresourceControllerTypeSATA
  	case *types.VirtualPCIController:
  		t = SubresourceControllerTypePCI
  	case *types.ParaVirtualSCSIController, *types.VirtualBusLogicController,
  		*types.VirtualLsiLogicController, *types.VirtualLsiLogicSASController:
  		t = SubresourceControllerTypeSCSI
  	default:
  		return subresourceControllerTypeUnknown, fmt.Errorf("unsupported controller type %T", c)
  	}
  	return t, nil
  }
docs: // controllerTypeToClass converts a controller type to a specific short-form
  // controller class, namely for use with working with IDs.