mirror of
https://github.com/Z3Prover/z3
synced 2026-02-19 23:14:40 +00:00
Migrate codebase to std::string_view (except z3++.h) (#8266)
* 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>
This commit is contained in:
parent
260db09e25
commit
671faf8f1c
20 changed files with 85 additions and 70 deletions
|
|
@ -19,6 +19,7 @@ Revision History:
|
|||
#pragma once
|
||||
|
||||
#include<algorithm>
|
||||
#include<string_view>
|
||||
#include "util/util.h"
|
||||
|
||||
#define mix(a,b,c) \
|
||||
|
|
@ -65,10 +66,10 @@ inline unsigned hash_u_u(unsigned a, unsigned b) {
|
|||
return combine_hash(hash_u(a), hash_u(b));
|
||||
}
|
||||
|
||||
unsigned string_hash(const char * str, unsigned len, unsigned init_value);
|
||||
unsigned string_hash(std::string_view str, unsigned init_value);
|
||||
|
||||
inline unsigned unsigned_ptr_hash(unsigned const* vec, unsigned len, unsigned init_value) {
|
||||
return string_hash((char const*)(vec), len*4, init_value);
|
||||
return string_hash(std::string_view((char const*)(vec), len*4), init_value);
|
||||
}
|
||||
|
||||
template<typename Composite, typename GetKindHashProc, typename GetChildHashProc>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue