diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2023-05-04 08:09:04 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-05-04 08:09:04 +0200 |
| commit | 3ce6dd2a54a3045c03aab3e25837ed8914240a65 (patch) | |
| tree | f84f958942252bbbe61c3b9f2f1bfdd08f316563 /compiler/rustc_data_structures/src | |
| parent | 1187ce7213dd8b7f36050e1994478dc9c7c5c451 (diff) | |
| parent | 3c6d9ec77d00eeb7e20d5f28dff684a0cabe21eb (diff) | |
| download | rust-3ce6dd2a54a3045c03aab3e25837ed8914240a65.tar.gz rust-3ce6dd2a54a3045c03aab3e25837ed8914240a65.zip | |
Rollup merge of #111024 - saethlin:stringify-full-svh, r=oli-obk
Use the full Fingerprint when stringifying Svh Finally circling back, per https://github.com/rust-lang/rust/pull/110367#discussion_r1168340739 r? `@oli-obk`
Diffstat (limited to 'compiler/rustc_data_structures/src')
| -rw-r--r-- | compiler/rustc_data_structures/src/fingerprint.rs | 5 | ||||
| -rw-r--r-- | compiler/rustc_data_structures/src/svh.rs | 10 |
2 files changed, 10 insertions, 5 deletions
diff --git a/compiler/rustc_data_structures/src/fingerprint.rs b/compiler/rustc_data_structures/src/fingerprint.rs index 6fa76981408..9995c08345c 100644 --- a/compiler/rustc_data_structures/src/fingerprint.rs +++ b/compiler/rustc_data_structures/src/fingerprint.rs @@ -64,6 +64,11 @@ impl Fingerprint { ) } + #[inline] + pub(crate) fn as_u128(self) -> u128 { + u128::from(self.1) << 64 | u128::from(self.0) + } + // Combines two hashes in an order independent way. Make sure this is what // you want. #[inline] diff --git a/compiler/rustc_data_structures/src/svh.rs b/compiler/rustc_data_structures/src/svh.rs index a3d2724fcdb..71679086f16 100644 --- a/compiler/rustc_data_structures/src/svh.rs +++ b/compiler/rustc_data_structures/src/svh.rs @@ -23,18 +23,18 @@ impl Svh { Svh { hash } } - pub fn as_u64(&self) -> u64 { - self.hash.to_smaller_hash().as_u64() + pub fn as_u128(self) -> u128 { + self.hash.as_u128() } - pub fn to_string(&self) -> String { - format!("{:016x}", self.hash.to_smaller_hash()) + pub fn to_hex(self) -> String { + format!("{:032x}", self.hash.as_u128()) } } impl fmt::Display for Svh { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - f.pad(&self.to_string()) + f.pad(&self.to_hex()) } } |
