   LEFT
 };
 
+// TODO Can probably just replace this with a std::pair
 // Each element of the result will be an index into the left and right columns where
 // left_columns[left_index] == right_columns[right_index]
 struct result_type 

    return result;
  }

  void compute_gdf_result(std::vector<result_type> & gdf_result, bool print = false, bool sort = true)
  {


  {
  }

    /* --------------------------------------------------------------------------*/
    /** 
     * @Synopsis  Creates a unique_ptr that wraps a gdf_column structure intialized with a host vector
     * 
     * @Param host_vector The host vector whose data is used to initialize the gdf_column
     * 
     * @Returns A unique_ptr wrapping the new gdf_column
     */
    /* ----------------------------------------------------------------------------*/
  template <typename col_type>
  gdf_col_pointer create_gdf_column(std::vector<col_type> const & host_vector)
  {
