public static function subclassOf($value, $class, $message = '')
{
if (!is_subclass_of($value, $class)) {
static::reportInvalidArgument(sprintf($message ?: 'Expected a sub-class of %2$s. Got: %s', static::valueToString($value), static::valueToString($class)));
}
}