<commit_before>// Header file for the MFCMAPI application registry functions

#pragma once
#include <utility>

namespace registry
{
	static const wchar_t* RKEY_ROOT = L"SOFTWARE\\Microsoft\\MFCMAPI";

	enum __REGKEYTYPES
	{
		regDWORD,
		regSTRING
	};

	enum __REGOPTIONTYPE
	{
		regoptCheck,
		regoptString,
		regoptStringHex,
		regoptStringDec
	};

	class __RegKey
	{
	public:
		std::wstring szKeyName;
		__REGKEYTYPES ulRegKeyType;
		__REGOPTIONTYPE ulRegOptType;
		DWORD ulDefDWORD;
		DWORD ulCurDWORD;
		std::wstring szDefSTRING;
		std::wstring szCurSTRING;
		bool bRefresh;
		UINT uiOptionsPrompt;

		__RegKey(const __RegKey&) = delete;
		__RegKey& operator=(__RegKey const&) = delete;
		__RegKey(__RegKey&&) = delete;
		__RegKey& operator=(__RegKey&&) = delete;
		~__RegKey() = default;
	};

	class boolRegKey : public __RegKey
	{
	public:
		boolRegKey(const std::wstring& _szKeyName, const bool _default, const bool _refresh, const int _uiOptionsPrompt)
			: __RegKey{}
		{
			szKeyName = _szKeyName;
			ulRegKeyType = regDWORD;
			ulRegOptType = regoptCheck;
			ulDefDWORD = _default;
			ulCurDWORD = _default;
			bRefresh = _refresh;
			uiOptionsPrompt = _uiOptionsPrompt;
		}

		operator bool() const { return ulCurDWORD != 0; }

		boolRegKey& operator=(const DWORD val)
		{
			ulCurDWORD = val;
			return *this;
		}
	};

	class dwordRegKey : public __RegKey
	{
	public:
		dwordRegKey(<commit_msg>Fix boolRegKey = operator<commit_after>// Header file for the MFCMAPI application registry functions

#pragma once
#include <utility>

namespace registry
{
	static const wchar_t* RKEY_ROOT = L"SOFTWARE\\Microsoft\\MFCMAPI";

	enum __REGKEYTYPES
	{
		regDWORD,
		regSTRING
	};

	enum __REGOPTIONTYPE
	{
		regoptCheck,
		regoptString,
		regoptStringHex,
		regoptStringDec
	};

	class __RegKey
	{
	public:
		std::wstring szKeyName;
		__REGKEYTYPES ulRegKeyType;
		__REGOPTIONTYPE ulRegOptType;
		DWORD ulDefDWORD;
		DWORD ulCurDWORD;
		std::wstring szDefSTRING;
		std::wstring szCurSTRING;
		bool bRefresh;
		UINT uiOptionsPrompt;

		__RegKey(const __RegKey&) = delete;
		__RegKey& operator=(__RegKey const&) = delete;
		__RegKey(__RegKey&&) = delete;
		__RegKey& operator=(__RegKey&&) = delete;
		~__RegKey() = default;
	};

	class boolRegKey : public __RegKey
	{
	public:
		boolRegKey(const std::wstring& _szKeyName, const bool _default, const bool _refresh, const int _uiOptionsPrompt)
			: __RegKey{}
		{
			szKeyName = _szKeyName;
			ulRegKeyType = regDWORD;
			ulRegOptType = regoptCheck;
			ulDefDWORD = _default;
			ulCurDWORD = _default;
			bRefresh = _refresh;
			uiOptionsPrompt = _uiOptionsPrompt;
		}

		operator bool() const { return ulCurDWORD != 0; }

		boolRegKey& operator=(const bool val)
		{
			ulCurDWORD = val;
			return *this;
		}
	};

	class dwordRegKey : public __RegKey
	{
	public:
		dwordRegKey(
{'fraction_non_alphanumeric': 0.0937389458790237, 'fraction_numerical': 0.0007074637424831977, 'mean_word_length': 4.198529411764706, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, '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': '3162783', 'n_tokens_mistral': 1153, 'n_tokens_neox': 1040, 'n_words': 235}