lib/wavelet_tree/wavelet_tree.cpp
// This function invokes table rank twice.
This function invokes table rank twice.
This function invokes table rank twice .
auto node_proxy::make_rhs() const noexcept -> node_proxy {
  assert(!is_leaf());
  const auto num_zeros = count_zeros();
  const auto first = (begin() + wt_ptr->seq_len) + num_zeros;
  return node_proxy(*wt_ptr,
                    first,
                    (size() - num_zeros),
                    get_table().rank_1(first - 1),
                    (level_mask >> 1));
}
auto node_proxy :: make_rhs ( ) const noexcept -> node_proxy { assert ( ! is_leaf ( ) ) ; const auto num_zeros = count_zeros ( ) ; const auto first = ( begin ( ) + wt_ptr -> seq_len ) + num_zeros ; return node_proxy ( * wt_ptr , first , ( size ( ) - num_zeros ) , get_table ( ) . rank_1 ( first - 1 ) , ( level_mask >> 1 ) ) ; }
This function invokes table rank twice.
This function invokes table rank twice .
/*wt_=*/ /*begin_=*/ /*size_=*/ /*ones_before_=*/ /*level_mask_=*/