// Eq returns true if the left Object is equal to the right Object.
// If either is nil Eq returns false.
// Comparing different types is also an error.
Eq returns true if the left Object is equal to the right Object.
If either is nil Eq returns false.
Comparing different types is also an error.
// Eq returns true if the left Object is equal to the right Object . // If either is nil Eq returns false . // Comparing different types is also an error .
func Eq(left Object, right Object) (Boolean, error) {
	leftIsNil := IsNil(left)
	rightIsNil := IsNil(right)
	if leftIsNil && rightIsNil {
		return Boolean(true), nil
	}
	if leftIsNil != rightIsNil {
		return Boolean(false), nil
	}
	return left.Eq(right)
}
func Eq ( left Object , right Object ) ( Boolean , error ) { leftIsNil := IsNil ( left ) rightIsNil := IsNil ( right ) if leftIsNil && rightIsNil { return Boolean ( true ) , nil } if leftIsNil != rightIsNil { return Boolean ( false ) , nil } return left . Eq ( right ) }
Eq returns true if the left Object is equal to the right Object.
Eq returns true if the left Object is equal to the right Object .
// If both are nil they are equal. // If one is nil and the other isn't they are not equal