<commit_before>#ifndef CCSPEC_CORE_EXAMPLE_GROUP_H_
#define CCSPEC_CORE_EXAMPLE_GROUP_H_

#include <functional>
#include <list>
#include <stack>
#include <string>
#include "example.h"
#include "hooks.h"

namespace ccspec {
namespace core {

class ExampleGroup;

extern std::stack<ExampleGroup*> groups_being_defined;

class ExampleGroup {
  public:
    virtual ~ExampleGroup();

    void addExample(Example);
    void addBeforeEachHook(BeforeHook hook);
    void addBeforeAllHook(BeforeHook hook);
    void addAfterEachHook(AfterHook hook);
    void addAfterAllHook(AfterHook hook);
    void addAroundHook(AroundHook hook);
    void run() const;

  private:
    typedef ExampleGroup* Creator(std::string desc,
                                  std::function<void ()> spec);

    explicit ExampleGroup(std::string desc);

    void addChild(const ExampleGroup*);
    void run(std::list<BeforeHook>& before_each_hooks,
             std::list<AfterHook>& after_each_hooks,
             std::list<AroundHook>&) const;

    const std::string desc_;
    std::list<const ExampleGroup*> children_;
    std::list<Example> examples_;
    std::list<BeforeHook> before_each_hooks_;
    std::list<BeforeHook> before_all_hooks_;
    std::list<AfterHook> after_each_hooks_;
    std::list<AfterHook> after_all_hooks_;
    std::list<AroundHook> around_hooks_;

    friend Creator describe;
    friend Creator context;
};

ExampleGroup::Creator describe;
ExampleGroup::Creator context;

} // namespace core
} // namespace ccspec

#endif // CCSPEC_CORE_EXAMPLE_GROUP_H_
<commit_msg>Remove redundant actual parameter<commit_after>#ifndef CCSPEC_CORE_EXAMPLE_GROUP_H_
#define CCSPEC_CORE_EXAMPLE_GROUP_H_

#include <functional>
#include <list>
#include <stack>
#include <string>
#include "example.h"
#include "hooks.h"

namespace ccspec {
namespace core {

class ExampleGroup;

extern std::stack<ExampleGroup*> groups_being_defined;

class ExampleGroup {
  public:
    virtual ~ExampleGroup();

    void addExample(Example);
    void addBeforeEachHook(BeforeHook);
    void addBeforeAllHook(BeforeHook);
    void addAfterEachHook(AfterHook);
    void addAfterAllHook(AfterHook);
    void addAroundHook(AroundHook);
    void run() const;

  private:
    typedef ExampleGroup* Creator(std::string desc,
                                  std::function<void ()> spec);

    explicit ExampleGroup(std::string desc);

    void addChild(const ExampleGroup*);
    void run(std::list<BeforeHook>& before_each_hooks,
             std::list<AfterHook>& after_each_hooks,
             std::list<AroundHook>&) const;

    const std::string desc_;
    std::list<const ExampleGroup*> children_;
    std::list<Example> examples_;
    std::list<BeforeHook> before_each_hooks_;
    std::list<BeforeHook> before_all_hooks_;
    std::list<AfterHook> after_each_hooks_;
    std::list<AfterHook> after_all_hooks_;
    std::list<AroundHook> around_hooks_;

    friend Creator describe;
    friend Creator context;
};

ExampleGroup::Creator describe;
ExampleGroup::Creator context;

} // namespace core
} // namespace ccspec

#endif // CCSPEC_CORE_EXAMPLE_GROUP_H_

{'fraction_non_alphanumeric': 0.1038794485411991, 'fraction_numerical': 0.0, 'mean_word_length': 4.426086956521739, 'pattern_counts': {'":': 0, '<': 35, '<?xml version=': 0, '>': 35, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2997117', 'n_tokens_mistral': 977, 'n_tokens_neox': 944, 'n_words': 206}