示例#1
0
 /// <summary>
 ///		Creates serializer as <typeparamref name="TObject"/> is array type.
 /// </summary>
 /// <returns>
 ///		<see cref="MessagePackSerializer{T}"/>.
 ///		This value will not be <c>null</c>.
 /// </returns>
 public sealed override MessagePackSerializer <TObject> CreateArraySerializer()
 {
     using (var emitter = EmittingSerializerBuilderLogics.CreateArraySerializerCore(this.Context, typeof(TObject), this._emitterFlavor))
     {
         try
         {
             return(emitter.CreateInstance <TObject>(this.Context));
         }
         finally
         {
             emitter.FlushTrace();
         }
     }
 }
        public sealed override MessagePackSerializer <TObject> CreateArraySerializer()
        {
            MessagePackSerializer <TObject> serializer;

            using (SerializerEmitter emitter = EmittingSerializerBuilderLogics.CreateArraySerializerCore(typeof(TObject), this._emitterFlavor))
            {
                try
                {
                    serializer = emitter.CreateInstance <TObject>(base.Context);
                }
                finally
                {
                    emitter.FlushTrace();
                }
            }
            return(serializer);
        }