parameters: (self, original_rp, broadcast_rp)
return_statement: return _LayerBroadcaster.from_gather_index(gather_index)
docstring: r"""Create the next layer gather_index whether or not a broadcast happens.
  
         *---------self------->*
         |                     |
      original_rp           broadcast_rp
         |                     |
        \|/                   \|/
         *--next_broadcaster-->*
      Args:
        original_rp: the original row partition.
        broadcast_rp: the target row partition.
  
      Returns:
        the gather_index for next_broadcaster.
docstring_summary: r"""Create the next layer gather_index whether or not a broadcast happens.
docstring_tokens: r Create the next layer gather_index whether or not a broadcast happens .
function: def next_layer(self, original_rp, broadcast_rp):
      r"""Create the next layer gather_index whether or not a broadcast happens.
  
         *---------self------->*
         |                     |
      original_rp           broadcast_rp
         |                     |
        \|/                   \|/
         *--next_broadcaster-->*
      Args:
        original_rp: the original row partition.
        broadcast_rp: the target row partition.
  
      Returns:
        the gather_index for next_broadcaster.
  
      """
      gather_index = _next_layer_gather_index(self, original_rp, broadcast_rp)
      return _LayerBroadcaster.from_gather_index(gather_index)
function_tokens: def next_layer ( self , original_rp , broadcast_rp ) : gather_index = _next_layer_gather_index ( self , original_rp , broadcast_rp ) return _LayerBroadcaster . from_gather_index ( gather_index )