This rule no longer appears to be buggy, so enforce it. Some of the automated fixes are adjusted in order to improve the result. #pragma directives have no option to control indentation, so remove them where possible.
added unit test
update ToHex(byte[]) to support mono
added punctuations to unit test summary and parameter description
Replaced with Convert.ToHexString(), public ToHex() + use from Color.ToString()
Adjusted back to a simpler mono compatible version only, with lowered allocation
Any struct which overrides object.Equals(object obj) should implement IEquatable<T> to gain a more efficient Equals(T other) overload. This overload will be used by hashing collections like Dictionary which enables them to check equality without boxing the struct.