/// <summary> Calculates a hash code for a grain reference. </summary> public override int GetHashCode() { int hash = GrainId.GetHashCode(); if (IsSystemTarget) { hash = hash ^ SystemTargetSilo.GetHashCode(); } if (IsObserverReference) { hash = hash ^ observerId.GetHashCode(); } return(hash); }
/// <summary> Calculates a hash code for a grain reference. </summary> public override int GetHashCode() { int hash = GrainId.GetHashCode(); if (IsSystemTarget) { hash = hash ^ SystemTargetSilo.GetHashCode(); } if (IsClientAddressableObject) { hash = hash ^ observerId.GetHashCode(); } return(hash); }
/// <summary>Get a uniform hash code for this grain reference.</summary> public uint GetUniformHashCode() { // GrainId already includes the hashed type code for generic arguments. return((uint)GrainId.GetHashCode()); }
/// <summary> Calculates a hash code for a grain reference. </summary> public override int GetHashCode() { return(SystemTargetSilo == null?GrainId.GetHashCode() : GrainId.GetHashCode() ^ SystemTargetSilo.GetHashCode()); }