private function checkPassword($password)
{
if (is_null($password)) {
return AskPasswordGetter::createLazyGetter();
}
if (is_scalar($password)) {
return $password;
}
if (is_object($password) && $password instanceof PasswordGetterInterface) {
return $password;
}
// Invalid password
throw new \InvalidArgumentException(sprintf('The password should be a string or PasswordGetterInterface instances, but "%s" given.', is_object($password) ? get_class($password) : gettype($password)));
}