src/main/php/ioc/binding/MultiBinding.php
private function isTypeMismatch($type, $value)
    {
        if (!($type instanceof \ReflectionClass)) {
            return false;
        }

        if (!is_object($value)) {
            return true;
        }

        return !$type->isInstance($value);
    }
private function isTypeMismatch($type, $value)
    {
        if (!($type instanceof \ReflectionClass)) {
            return false;
        }

        if (!is_object($value)) {
            return true;
        }

        return !$type->isInstance($value);
    }
private function isTypeMismatch ( $ type , $ value ) { if ( ! ( $ type instanceof \ ReflectionClass ) ) { return false ; } if ( ! is_object ( $ value ) ) { return true ; } return ! $ type -> isInstance ( $ value ) ; }
checks if given type and type of value are a mismatch

A type mismatch is defined as follows: $value is an object and it's
an instance of the class defined with $type. In any other case there's no
type mismatch

@param   string|\ReflectionClass  $type
@param   mixed                    $value
@return  bool
checks if given type and type of value are a mismatch