protected internal override Task <T> UnpackFromAsyncCore(Unpacker unpacker, CancellationToken cancellationToken) { return (TypeInfoEncoder.DecodeAsync <T>( unpacker, // ReSharper disable once ConvertClosureToMethodGroup (u, c) => TypeInfoEncoder.DecodeRuntimeTypeInfoAsync(u, c), // Lamda capture is more efficient. (t, u, c) => this.GetActualTypeSerializer(t).UnpackFromAsync(u, c), cancellationToken )); }
protected internal override Task <T> UnpackFromAsyncCore(Unpacker unpacker, CancellationToken cancellationToken) { return (TypeInfoEncoder.DecodeAsync <T>( unpacker, // Currently, lamda is more efficient than method group. // ReSharper disable once ConvertClosureToMethodGroup c => this.GetTypeFromCode(c), (t, u, c) => this.GetActualTypeSerializer(t).UnpackFromAsync(u, c), cancellationToken )); }