code: function MorayRpcContext(args) {
      assert.object(args, 'args');
      assert.number(args.id, 'args.id');
      assert.object(args.connection, 'args.connection');
      assert.object(args.morayClient, 'args.morayClient');
  
      /*
       * There's no mechanism in place to stop us from reaching this limit, but
       * even at one million requests per second, we won't hit it until the client
       * has been running for over 142 years.
       */
      assert.ok(args.id >= 0 && args.id < Math.pow(2, 53));
  
      this.mc_id = args.id;
      this.mc_conn = args.connection;
      this.mc_moray = args.morayClient;
  }
docs: /*
  A MorayRpcContext is a per-request handle that refers back to the Moray
  client and the underlying connection.  This object is provided to RPC
  implementors, and allows them to access the underlying Fast client (in order
  to make RPC requests), configuration (like "unwrapErrors"), and to release
  the RPC context when the RPC completes.
  
  This class should be thought of as part of the implementation of the Moray
  client itself, having internal implementation knowledge of the client.