<commit_before>#include <archie/utils/fused/apply.h>

auto count = [](auto const&... xs) { return sizeof...(xs); };

namespace fused = archie::utils::fused;

#include <archie/utils/test.h>

void canUseApplyWithRegularArgs() {
  EXPECT_EQ(1u, fused::apply(count, 3));
  EXPECT_EQ(2u, fused::apply(count, 3, 2));
  EXPECT_EQ(3u, fused::apply(count, 3, 2, 1));
}

void canUseApplyWithTuple() {
  auto t1 = fused::make_tuple(3);
  auto t2 = fused::make_tuple(3, 2);
  auto t3 = fused::make_tuple(3, 2, 1);

  EXPECT_EQ(1u, fused::apply(count, t1));
  EXPECT_EQ(2u, fused::apply(count, t2));
  EXPECT_EQ(3u, fused::apply(count, t3));
}

int main() {
  canUseApplyWithRegularArgs();
  canUseApplyWithTuple();
  return 0;<commit_msg>additional test for fused::apply<commit_after>#include <archie/utils/fused/apply.h>

auto count = [](auto const&... xs) { return sizeof...(xs); };

namespace fused = archie::utils::fused;

#include <archie/utils/test.h>

void canUseApplyWithRegularArgs() {
  EXPECT_EQ(1u, fused::apply(count, 3));
  EXPECT_EQ(2u, fused::apply(count, 3, 2));
  EXPECT_EQ(3u, fused::apply(count, 3, 2, 1));
}

void canUseApplyWithTuple() {
  auto t1 = fused::make_tuple(3);
  auto t2 = fused::make_tuple(3, 2);
  auto t3 = fused::make_tuple(3, 2, 1);

  EXPECT_EQ(1u, fused::apply(count, t1));
  EXPECT_EQ(2u, fused::apply(count, t2));
  EXPECT_EQ(3u, fused::apply(count, t3));
}

void canUseApplyWithRValueTuple() {
  EXPECT_EQ(1u, fused::apply(count, fused::make_tuple(3)));
  EXPECT_EQ(2u, fused::apply(count, fused::make_tuple(3, 2)));
  EXPECT_EQ(3u, fused::apply(count, fused::make_tuple(3, 2, 1)));
}

int main() {
  canUseApplyWithRegularArgs();
  canUseApplyWithTuple();
  canUseApplyWithRValueTuple();
  return 0;
{'fraction_non_alphanumeric': 0.18659734257654534, 'fraction_numerical': 0.0340843443096476, 'mean_word_length': 5.818897637795276, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7359670', 'n_tokens_mistral': 730, 'n_tokens_neox': 684, 'n_words': 131}