<commit_before>#ifndef CPR_AUTH_H
#define CPR_AUTH_H

#include <string>
#include <utility>

namespace cpr {

    class Authentication {
      public:
        template<typename UserType, typename PassType>
        Authentication(UserType&& username, PassType&& password)
            : username_{std::forward<decltype(username)>(username)},
              password_{std::forward<decltype(password)>(password)},
              auth_string_{username_ + ":" + password_} {}

        const char* GetAuthString() const;

      private:
        std::string username_;
        std::string password_;
        std::string auth_string_;
    };

}

#endif<commit_msg>Add c-style string constructor to Authentication Since c-style strings can't be moved from, and since the forwarding references are greedy, a non-template constructor is necessary to consume c-style string arguments References #50<commit_after>#ifndef CPR_AUTH_H
#define CPR_AUTH_H

#include <string>
#include <utility>

namespace cpr {

    class Authentication {
      public:
        template<typename UserType, typename PassType>
        Authentication(UserType&& username, PassType&& password)
            : username_{std::forward<decltype(username)>(username)},
              password_{std::forward<decltype(password)>(password)},
              auth_string_{username_ + ":" + password_} {}
        Authentication(const char* username, const char* password)
            : Authentication{std::string{username}, std::string{password}} {}

        const char* GetAuthString() const;

      private:
        std::string username_;
        std::string password_;
        std::string auth_string_;
    };

}

#endif
{'fraction_non_alphanumeric': 0.10504201680672269, 'fraction_numerical': 0.0012004801920768306, 'mean_word_length': 3.3186528497409324, 'pattern_counts': {'":': 2, '<': 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': '6667521', 'n_tokens_mistral': 450, 'n_tokens_neox': 429, 'n_words': 112}