<commit_before>#ifndef MANIFOLDS_FUNCTIONS_RECIRPOCAL_HH
#define MANIFOLDS_FUNCTIONS_RECIRPOCAL_HH

#include "function.hh"
#include "full_function_defs.hh"

namespace manifolds {
template <class Numerator,
	  class Denominator>
struct DivisionImpl : MultiFunction
{
  static const bool stateless =
    and_<is_stateless<Numerator>,
	 is_stateless<Denominator>>::value;

  DivisionImpl(){}
  DivisionImpl(Numerator n, Denominator d):
    n(n),d(d){}

  template <class ... Args>
  auto operator()(Args ... args) const
  {
    return n(args...) / d(args...);
  }

private:
  Numerator n;
  Denominator d;
};

DEF_FF_TEMPLATE(Division)

}

#endif<commit_msg>Getters<commit_after>#ifndef MANIFOLDS_FUNCTIONS_RECIRPOCAL_HH
#define MANIFOLDS_FUNCTIONS_RECIRPOCAL_HH

#include "function.hh"
#include "full_function_defs.hh"

namespace manifolds {
template <class Numerator,
	  class Denominator>
struct DivisionImpl : MultiFunction
{
  static const bool stateless =
    and_<is_stateless<Numerator>,
	 is_stateless<Denominator>>::value;

  DivisionImpl(){}
  DivisionImpl(Numerator n, Denominator d):
    n(n),d(d){}

  template <class ... Args>
  auto operator()(Args ... args) const
  {
    return n(args...) / d(args...);
  }

  auto GetNumerator() const
  {
    return n;
  }

  auto GetDenominator() const
  {
    return d;
  }

  auto GetFunctions() const
  {
    return std::make_tuple(n,d);
  }

private:
  Numerator n;
  Denominator d;
};

DEF_FF_TEMPLATE(Division)

}

#endif
{'fraction_non_alphanumeric': 0.12178619756427606, 'fraction_numerical': 0.0, 'mean_word_length': 4.189473684210526, 'pattern_counts': {'":': 0, '<': 13, '<?xml version=': 0, '>': 13, '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': '2788687', 'n_tokens_mistral': 559, 'n_tokens_neox': 542, 'n_words': 108}