mirror of
https://github.com/Z3Prover/z3
synced 2026-02-02 07:16:17 +00:00
* Initial plan * Update z3 codebase to use std::string_view (except z3++.h) - Updated params.cpp/h to use string_view internally for parameter descriptions - Updated trace.h/cpp to accept string_view for trace tag functions - Updated hash.h/cpp to use string_view for string_hash function - Updated all callers of string_hash to use string_view - Properly handled nullptr to empty string_view conversions - All tests passing Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com> * Add missing string_view includes to headers Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
32 lines
663 B
C++
32 lines
663 B
C++
/*++
|
|
Copyright (c) 2006 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
str_hashtable.h
|
|
|
|
Abstract:
|
|
|
|
String hashtable. It uses Jenkin's hash function and the optimized hashtable module.
|
|
|
|
Author:
|
|
|
|
Leonardo de Moura (leonardo) 2006-09-13.
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
#pragma once
|
|
|
|
#include<string.h>
|
|
|
|
#include "util/hashtable.h"
|
|
#include "util/hash.h"
|
|
|
|
struct str_hash_proc {
|
|
unsigned operator()(char const * s) const { return string_hash(std::string_view(s), 17); }
|
|
};
|
|
struct str_eq_proc { bool operator()(char const * s1, char const * s2) const { return strcmp(s1, s2) == 0; } };
|
|
typedef ptr_hashtable<const char, str_hash_proc, str_eq_proc> str_hashtable;
|
|
|
|
|