ObjFW  Diff

Differences From Artifact [e2396474e9]:

To Artifact [6768b46f61]:


942
943
944
945
946
947
948
949
950
951
952







953
954
955
956
957
958
959







960
961
962
963
964
965
966
967
968
969
		return NO;
	}
}

- (uint32_t)hash
{
	uint32_t hash;
	size_t i;

	switch (type) {
	case OF_NUMBER_FLOAT:







		OF_HASH_INIT(hash);
		for (i = 0; i < sizeof(float); i++)
			OF_HASH_ADD(hash, ((char*)&value.float_)[i]);
		OF_HASH_FINALIZE(hash);

		return hash;
	case OF_NUMBER_DOUBLE:







		OF_HASH_INIT(hash);
		for (i = 0; i < sizeof(double); i++)
			OF_HASH_ADD(hash, ((char*)&value.double_)[i]);
		OF_HASH_FINALIZE(hash);

		return hash;
	default:
		return [self uInt32Value];
	}
}







<


|
>
>
>
>
>
>
>

<
|



|
>
>
>
>
>
>
>

<
|







942
943
944
945
946
947
948

949
950
951
952
953
954
955
956
957
958
959

960
961
962
963
964
965
966
967
968
969
970
971
972

973
974
975
976
977
978
979
980
		return NO;
	}
}

- (uint32_t)hash
{
	uint32_t hash;


	switch (type) {
	case OF_NUMBER_FLOAT:;
		union {
			float f;
			uint32_t i;
		} f;

		f.f = of_bswap_float_if_le(value.float_);

		OF_HASH_INIT(hash);

		OF_HASH_ADD_INT32(hash, f.i);
		OF_HASH_FINALIZE(hash);

		return hash;
	case OF_NUMBER_DOUBLE:;
		union {
			double d;
			uint64_t i;
		} d;

		d.d = of_bswap_double_if_le(value.double_);

		OF_HASH_INIT(hash);

		OF_HASH_ADD_INT64(hash, d.i);
		OF_HASH_FINALIZE(hash);

		return hash;
	default:
		return [self uInt32Value];
	}
}