packages/grpc-native-core/src/client.js
function ClientDuplexStream(call) {
  Duplex.call(this, {objectMode: true});
  this.call = call;
  /* Status generated from reading messages from the server. Overrides the
   * status from the server if not OK */
  this.read_status = null;
  /* Status received from the server. */
  this.received_status = null;
  var self = this;
  this.on('finish', function() {
    self.call.halfClose();
  });
}
function ClientDuplexStream(call) {
  Duplex.call(this, {objectMode: true});
  this.call = call;
  /* Status generated from reading messages from the server. Overrides the
   * status from the server if not OK */
  this.read_status = null;
  /* Status received from the server. */
  this.received_status = null;
  var self = this;
  this.on('finish', function() {
    self.call.halfClose();
  });
}
function ClientDuplexStream ( call ) { Duplex . call ( this , { objectMode : true } ) ; this . call = call ; /* Status generated from reading messages from the server. Overrides the
   * status from the server if not OK */ this . read_status = null ; /* Status received from the server. */ this . received_status = null ; var self = this ; this . on ( 'finish' , function ( ) { self . call . halfClose ( ) ; } ) ; }
A stream that the client can read from or write to. Used for calls with
duplex streaming.
@constructor grpc~ClientDuplexStream
@extends external:Duplex
@borrows grpc~ClientUnaryCall#cancel as grpc~ClientDuplexStream#cancel
@borrows grpc~ClientUnaryCall#getPeer as grpc~ClientDuplexStream#getPeer
@borrows grpc~ClientWritableStream#write as grpc~ClientDuplexStream#write
@borrows grpc~ClientUnaryCall#event:metadata as
grpc~ClientDuplexStream#metadata
@borrows grpc~ClientUnaryCall#event:status as
grpc~ClientDuplexStream#status
@param {InterceptingCall} call Exposes gRPC request operations, processed by
an interceptor stack.
A stream that the client can read from or write to . Used for calls with duplex streaming .