public static function resource($value, $type = null, $message = '')
{
if (!is_resource($value)) {
static::reportInvalidArgument(sprintf($message ?: 'Expected a resource. Got: %s', static::typeToString($value)));
}
if ($type && $type !== get_resource_type($value)) {
static::reportInvalidArgument(sprintf($message ?: 'Expected a resource of type %2$s. Got: %s', static::typeToString($value), $type));
}
}