LINUX.ORG.RU

История изменений

Исправление kvpfs, (текущая версия) :

По-моему, очень просто создавать дешёвый ключ без переаллокаций со строкой внутри без всяких вью:

struct MyStruct {};

thread_local tuple<string, MyStruct> key;
auto &crt_key(auto &str) {
	std::get<0>(key) = str;
	std::get<1>(key) = {};
	return key;
}

int main() {
	crt_key("dkjf");
}

Также сильно не нравится ручное комбинирование хеша, вроде туплы из буста умееют делать это без своих костылей.

Исходная версия kvpfs, :

По-моему, очень просто создавать дешёвый ключ без переаллокаций со строкой внутри без всяких вью:

struct MyStruct {};

auto &crt_key(auto &str) {
	static thread_local tuple<string, MyStruct> key;
	std::get<0>(key) = str;
	std::get<1>(key) = {};
	return key;
}

int main() {
	crt_key("dkjf");
}

Также сильно не нравится ручное комбинирование хеша, вроде туплы из буста умееют делать это без своих костылей.