Beispiel #1
0
 public static ulong?ComputeHash(ReadOnlySpan <byte> buffer, IValueHashProvider valueHashProvider = null,
                                 ulong?seed = null)
 {
     return(buffer == null
         ? default
         : (valueHashProvider ?? Defaults.ValueHashProvider).ComputeHash64(buffer, seed ?? DefaultSeed));
 }
Beispiel #2
0
        public static ulong?ComputeHash(object instance, IObjectSerializer objectSerializer = null,
                                        IStringSerializer stringSerializer   = null, ITypeResolver typeResolver = null,
                                        IValueHashProvider valueHashProvider = null, ulong?seed = null)
        {
            stringSerializer ??= Defaults.StringSerializer;
            objectSerializer ??= Defaults.ObjectSerializer;
            typeResolver ??= Defaults.TypeResolver;

            return(instance is string text
                ? ComputeHash(stringSerializer.ToBuffer(text, objectSerializer, typeResolver), valueHashProvider, seed)
                : ComputeHash(objectSerializer.ToBuffer(instance, typeResolver), valueHashProvider, seed));
        }