<?php /* * Copyright (c) Alexandre Gomes Gaigalas <alganet@gmail.com> * SPDX-License-Identifier: MIT */ declare(strict_types=1); namespace Respect\Validation\Rules; use function filter_var; use function is_bool; use const FILTER_NULL_ON_FAILURE; use const FILTER_VALIDATE_BOOLEAN; /** * Validates if the input results in a boolean value. * * @author Emmerson Siqueira <emmersonsiqueira@gmail.com> * @author Henrique Moody <henriquemoody@gmail.com> * @author William Espindola <oi@williamespindola.com.br> */ final class BoolVal extends AbstractRule { /** * {@inheritDoc} */ public function validate($input): bool { return is_bool(filter_var($input, FILTER_VALIDATE_BOOLEAN, FILTER_NULL_ON_FAILURE)); } }