Tells whether two Street objects are equal
@param  ValueObjectInterface $street
@return bool
183330
public function sameValueAs(ValueObjectInterface $street)
    {
        if (false === Util::classEquals($this, $street)) {
            return false;
        }

        return $this->getName()->sameValueAs($street->getName()) &&
               $this->getNumber()->sameValueAs($street->getNumber()) &&
               $this->getElements()->sameValueAs($street->getElements());
        ;
    }
430638
public function Equals( $obj )
	{
		if ( ! $obj instanceof HexBinaryValue )
		{
			return false;
		}

		return strcmp( $this->BinaryValue, $obj->BinaryValue ) == 0;
	}
957567
public static function isSelected($value, $valueObject)
    {
        if(is_array($value) && count($value) > 0)
        {
            return in_array($valueObject, $value);
        }

        if($value instanceof Collection)
        {
            foreach($value as $v)
            {
                if($v->getKey() === $valueObject)
                {
                    return true;
                }
            }
            return false;
        }
        elseif($value === $valueObject)
        {
            return true;
        }
        return false;
    }
829617
public function Equals( $obj )
	{
		if ( ! $obj instanceof ENTITIESValue )
		{
			return false;
		}

		/**
		 * @var ENTITIESValue $other
		 */
	    $other = $obj;
	    if ( count( $other->ValueList ) != count( $this->ValueList ) ) return false;
		return count( array_diff( $other->ValueList, $this->ValueList ) ) == 0;
	}
1108391
public function Equals($obj)
	{
		if ( ! $obj instanceof IDREFValue )
		{
			return false;
		}

		/**
		 * @var TokenValue $other
		 */
		$other = $obj;
		return strcmp( $this->Value, $other->Value ) == 0;
	}
171616
public function sameValueAs(ValueObjectInterface $timezone)
    {
        if (false === Util::classEquals($this, $timezone)) {
            return false;
        }

        return $this->getName()->sameValueAs($timezone->getName());
    }
39482
public static function isEqual($a, $b)
    {
        if ($a === $b) {
            return true;
        } elseif ($a instanceof \stdClass) {
            return self::isEqual((array) $a, $b);
        } elseif ($b instanceof \stdClass) {
            return self::isEqual($a, (array) $b);
        } else {
            return false;
        }
    }
707613
public function sameValueAs(ValueObjectInterface $address)
    {
        if (false === Util::classEquals($this, $address)) {
            return false;
        }

        return $this->getName()->sameValueAs($address->getName())             &&
               $this->getStreet()->sameValueAs($address->getStreet())         &&
               $this->getDistrict()->sameValueAs($address->getDistrict())     &&
               $this->getCity()->sameValueAs($address->getCity())             &&
               $this->getRegion()->sameValueAs($address->getRegion())         &&
               $this->getPostalCode()->sameValueAs($address->getPostalCode()) &&
               $this->getCountry()->sameValueAs($address->getCountry())
        ;
    }
1113673
public function Equals($obj)
	{
		if ( ! $obj instanceof NMTOKENValue )
		{
			return false;
		}

		/**
		 * @var TokenValue $other
		 */
		$other = $obj;
		return strcmp( $this->Value, $other->Value ) == 0;
	}
1127513
function Equals(TableObject $object = null)
    {
        if (!$object)
            return false;

        if (get_class($this) == get_class($object))
            return $this->KeyValue() == $object->KeyValue();

        return $this === $object;
    }
842051
public function Equals( $obj )
	{
		if ( ! $obj instanceof TimeValue )
		{
			return false;
		}

		/**
		 * @var DateTimeValueBase $other
		 */
		$other = $obj;
		return $this->ToString( null ) == $other->ToString( null );
	}
458819
public function equals(PlayerContract $object): bool
    {
        return static::class === get_class($object)
        && $this->id() === $object->id()
        && $this->name() === $object->name()
        && $this->wallet() === $object->wallet();
    }
912965
public function Equals( $obj )
	{
		if ( is_string( $obj ) )
		{
	        return $this->Value == $obj;
		}
		else if ( $obj instanceof AnyUriValue )
		{
			/**
			 * @var AnyUriValue $other
			 */
			$other = $obj;
	        return $this->Value == $other->Value;
		}

	    return false;
	}
68953
public static function haveTheSameTypeAndValue($value1, $value2)
    {
        if (\gettype($value1) !== \gettype($value2)) {
            return false;
        }

        return self::haveTheSameValue($value1, $value2);
    }
168990
public function Equals($obj)
	{
		if ( ! $obj instanceof NMTOKENSValue )
		{
			return false;
		}

		/**
		 * @var NMTOKENSValue $other
		 */
		$other = $obj;
		if ( count( $other->ValueList ) != count( $this->ValueList ) ) return false;
		// BMS 2018-03-21 This test is order independent but should be order dependent
		// return count( array_diff( $other->ValueList, $this->ValueList ) ) == 0;
		foreach ( $this->ValueList as $index => $token )
		{
			if ( $other->ValueList[ $index ] != $token ) return false;
		}
		return true;
	}
583855
public function equals($obj)
    {
        if ($obj instanceof QtiScalar) {
            return $obj->getValue() === $this->getValue();
        } else {
            return $this->getValue() === $obj;
        }
    }
326722
public static function areSameType($value1, $value2): bool
    {
        if (!is_object($value1) || !is_object($value2)) {
            return gettype($value1) === gettype($value2);
        }

        return get_class($value1) === get_class($value2);
    }