public static Hash128 Compute (ref T val);
public static Hash128 Compute (int val);
public static Hash128 Compute (float val);

Parameters

valInput value.

Returns

Hash128 The 128-bit hash.

Description

Compute a hash of input data.

The value must be an "unmanaged" C# type. Primitive types like int, float, bool, enums, pointers, or structs containing primitive types are all unmanaged types. See Unmanaged types in C# language reference.

The int and float overloads use a dedicated hashing code path that is optimized for 4-byte data sizes.

using UnityEngine;

public class ExampleScript : MonoBehaviour { void Start() { var data = new Vector3(1.5f, 7.0f, 42.0f); var hash = Hash128.Compute(ref data); // prints "abc99ce06a8d7acca0714cd64d661808" Debug.Log(hash.ToString()); } }

public static Hash128 Compute (string data);

Parameters

dataInput data string. Note that Unity interprets the string as UTF-8 data, even if internally in C# strings are UTF-16.

Returns

Hash128 The 128-bit hash.

Description

Compute a hash of input data string.

using UnityEngine;

public class ExampleScript : MonoBehaviour { void Start() { var hash = Hash128.Compute("The quick brown fox jumps over the lazy dog"); // prints "c79306aa46e8122b1b340724747e361d" Debug.Log(hash.ToString()); } }

public static Hash128 Compute (T[] data);
public static Hash128 Compute (List<T> data);
public static Hash128 Compute (NativeArray<T> data);

Parameters

dataInput data array.

Returns

Hash128 The 128-bit hash.

Description

Compute a hash of input data.

using UnityEngine;

public class ExampleScript : MonoBehaviour { void Start() { var data = new byte[] { 10, 20, 30, 40, 50 }; var hash = Hash128.Compute(data); // prints "6e8dd00dc1d495a01d9e6dbffcd174b2" Debug.Log(hash.ToString()); } }

public static Hash128 Compute (T[] data, int start, int count);
public static Hash128 Compute (List<T> data, int start, int count);
public static Hash128 Compute (NativeArray<T> data, int start, int count);

Parameters

dataInput data array.
startThe first element in the data to start hashing from.
countNumber of array elements to hash.

Returns

Hash128 The 128-bit hash.

Description

Compute a hash of a slice of input data.

using UnityEngine;

public class ExampleScript : MonoBehaviour { void Start() { var data = new byte[] { 0, 10, 20, 30, 40, 50, 60 }; // will hash bytes: 10, 20, 30, 40, 50 var hash = Hash128.Compute(data, 1, 5); // prints "6e8dd00dc1d495a01d9e6dbffcd174b2" Debug.Log(hash.ToString()); } }

public static Hash128 Compute (void* data, ulong size);

Parameters

dataRaw data pointer, usually used with C# stackalloc data.
sizeData size in bytes.

Returns

Hash128 The 128-bit hash.

Description

Compute a hash of input data.