public static function hash($value) : string
    {
        if (is_object($value)) {
            if ($value instanceof IHashable) {
                return get_class($value) . ':' . $value->getObjectHash();
            } else {
                return serialize($value);
            }
        }

        return Identity::hash($value);
    }
public static function hash($value) : string
    {
        if (is_object($value)) {
            if ($value instanceof IHashable) {
                return get_class($value) . ':' . $value->getObjectHash();
            } else {
                return serialize($value);
            }
        }

        return Identity::hash($value);
    }
public static function hash ( $ value ) : string { if ( is_object ( $ value ) ) { if ( $ value instanceof IHashable ) { return get_class ( $ value ) . ':' . $ value -> getObjectHash ( ) ; } else { return serialize ( $ value ) ; } } return Identity :: hash ( $ value ) ; }
Gets a unique string for the supplied value.

@param mixed $value

@return string
Gets a unique string for the supplied value .