<commit_before>#include <dim/dim>
#include <iostream>

using namespace dim::core;
using namespace std;

template <typename... Args>
using T = args::Thread<Args...>;
template <typename... Args>
using TH = args::ThreadsHandler<Args...>;
template <typename... Args>
using TR = args::ThreadsRunner<Args...>;

class MyThread : public T<int&, int&>
{
public:
    void operator()(int& a, int& b)
    {
	while (1) { cout << a+10 << " " << b+10 << " "; cout.flush(); }
    }
};

class MyThread2 : public T<int&, int&>
{
public:
    void operator()(int& a, int& b)
    {
	while (1) { cout << a+20 << " " << b+20 << " "; cout.flush(); }
    }
};

class MyThread3 : public TH<int&, int&>
{
public:
    void addTo(TR<int&, int&>&)
    {

    }
};

int main()
{
    TR<int&, int&> tr;

    MyThread mt;
    MyThread2 mt2;
    MyThread3 mt3;
    tr.add(mt).add(mt2).add(mt3);

    int a = 1, b = 1;

    tr(a, b);

    return 0;
}<commit_msg>* test/t-Thread-*: fixed issues induced by the new version of thread class<commit_after>#include <dim/dim>
#include <iostream>

using namespace dim::core;
using namespace std;

template <typename... Args>
using T = Thread<Args...>;
template <typename... Args>
using TH = ThreadsHandler<Args...>;
template <typename... Args>
using TR = ThreadsRunner<Args...>;

class MyThread : public T<int&, int&>
{
public:
    void operator()(int& a, int& b)
    {
	while (1) { cout << a+10 << " " << b+10 << " "; cout.flush(); }
    }
};

class MyThread2 : public T<int&, int&>
{
public:
    void operator()(int& a, int& b)
    {
	while (1) { cout << a+20 << " " << b+20 << " "; cout.flush(); }
    }
};

class MyThread3 : public TH<int&, int&>
{
public:
    void addTo(TR<int&, int&>&)
    {

    }
};

int main()
{
    TR<int&, int&> tr;

    MyThread mt;
    MyThread2 mt2;
    MyThread3 mt3;
    tr.add(mt).add(mt2).addHandler(mt3);

    int a = 1, b = 1;

    tr(a, b);

    return 0;
}
{'fraction_non_alphanumeric': 0.20168067226890757, 'fraction_numerical': 0.022058823529411766, 'mean_word_length': 2.879837067209776, 'pattern_counts': {'":': 0, '<': 61, '<?xml version=': 0, '>': 29, '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': '6474903', 'n_tokens_mistral': 761, 'n_tokens_neox': 741, 'n_words': 195}