public static function allow(array $whitelist) : Validator\Any
    {
        return self::any()->should(
            function ($value) use ($whitelist) : bool {
                foreach ($whitelist as $candidate) {
                    if ($candidate === $value) {
                        return true;
                    }
                }

                return false;
            },
            'not in the whitelist'
        );
    }