/// <summary>
        /// Serialize to binary with specified resolver.
        /// </summary>
        public static byte[] Serialize <T>(T obj, IFormatterResolver resolver)
        {
            if (resolver == null)
            {
                resolver = MessagePackSerializer.DefaultResolver;
            }
            var buffer = SerializeCore(obj, resolver);

            return(MessagePackBinary.FastCloneWithResize(buffer.Array, buffer.Count));
        }
        /// <summary>
        /// Serialize to binary with specified resolver.
        /// </summary>
        public static byte[] Serialize <T>(T obj, IFormatterResolver resolver)
        {
            var formatter = resolver.GetFormatterWithVerify <T>();

            var buffer = InternalMemoryPool.Buffer;

            var len = formatter.Serialize(ref buffer, 0, obj, resolver);

            // do not return MemoryPool.Buffer.
            return(MessagePackBinary.FastCloneWithResize(buffer, len));
        }
Ejemplo n.º 3
0
        public static byte[] ToLZ4Binary(ArraySegment <byte> messagePackBinary)
        {
            var buffer = ToLZ4BinaryCore(messagePackBinary);

            return(MessagePackBinary.FastCloneWithResize(buffer.Array, buffer.Count));
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Serialize to binary with default resolver.
        /// </summary>
        public override byte[] Serialize <T>(T obj, IFormatterResolver resolver)
        {
            var buffer = SerializeCore(obj, resolver);

            return(MessagePackBinary.FastCloneWithResize(buffer.Array, buffer.Count));
        }