Files
meetingroom-netscreen/push_screen_rust/target/x86_64-pc-windows-gnu/debug/deps/libfnv-9db4f5ac75f1911d.rmeta

72 lines
9.1 KiB
Plaintext
Raw Normal View History

rust
<EFBFBD>"Brustc 1.91.1 (ed61e7d7e 2025-11-07) (Rev1, Built by MSYS2 project)<29><02>z<00><><EFBFBD>v<EFBFBD><76><EFBFBD>_L<5F><4C><16>-b7ba0d454035f46e<36><02>0<>#`a<><61>i<EFBFBD>+<2B>F<EFBFBD>T8<-0a5677bcdbf6ca93<39><02>P"~<7E><>j.@݆<>m<EFBFBD><6D>-0e40213d20945e66<36><02>1<>-<2D>3<EFBFBD><33>%<25>:<3A><>R<>-0a51333fad0e7ace<63><02> <09>t4<74><34><EFBFBD>X0<><30>T%<25>Y-99f85c7fe67cb72d<32>rustc_std_workspace_core<72><65>S<EFBFBD><53>QQ;%<25><><1D><1F>-66851ed73bc307db<64><02>ja<13><><EFBFBD>˚$/z1K<31><4B><EFBFBD>-dfe8c0cb3eed9a56<35> miniz_oxide<64>$<24>I<EFBFBD><49>L<EFBFBD> }<7D>M7M"u-485603f6129fcde3<65>adler2<72>0<EFBFBD><65><03><><EFBFBD><EFBFBD>(<28>[<5B>-bc37dbc3f4788d47<34> hashbrown<77><6E><EFBFBD>^<5E>*ݽ<>h-<2D>7o<1A>-a4fd21c9d4cd9131<33>rustc_std_workspace_alloc<6F><63>Hr<48><72><EFBFBD>ֈ#<1B>*ʒG<CA92>-f2934bf091a24430<33>
std_detect<EFBFBD><EFBFBD><EFBFBD>*#<23><>B&<26><>b<EFBFBD><62>-04d6f0b7f0a1cbf3<66>rustc_demangle<6C><65><05>w<EFBFBD>mnaznq<6E>T<EFBFBD>H`-75f9d07faa668461<36>windows_targets<74><73><EFBFBD><EFBFBD><14><>Tp<><70>V[]<18>-1e7e2002877a7702<30>cfg_if<69><66><EFBFBD>|<7C><><EFBFBD><EFBFBD><EFBFBD>j<EFBFBD>/<2F>1<><31>-9a0ff217d313773e<33> addr2line<6E><65>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Qh<EFBFBD>T<EFBFBD>Z^<5E>p9-5cf1b423f27c2917<31>gimli<6C>2<EFBFBD>q<EFBFBD><71>0<EFBFBD><30>?i<>~(p-183935a8c8e2cc27<32>object<63><74>&<26>r<EFBFBD><72>&إ,y<><79><EFBFBD>|I-b58121bb5e8f1ebf<62>memchr<68><72>_<13><> 8<># B<><42><EFBFBD><EFBFBD><EFBFBD>-b16db7c5ac5d3d15<31><02> <0B>]'{<7B><>.s<>q<EFBFBD>&<26>`<60>-1bba00c8766e6077<37><02>,<2C><02><<3C><02>,<2C>|<7C><00><><02><<3C><02><<3C><02>,<2C>|<7C><00><><02>4<><02><<3C><02>,<2C>|<7C><00><>BuildHasherDefault<6C><74><EFBFBD><02>5<02>31/1<02>$<24><02>$<24><02> FnvHasher<65>

<02> >with_key<65>finish<73>write<74>FnvBuildHasher<65>
FnvHashMap<EFBFBD>K<>V<>
FnvHashSet<EFBFBD><02>888<02>

 <01>  <02> <08><><17>5<EFBFBD><35><02>_<01>  

<02>
<02>_<01><> 
 !<01> ,3:
<02><02><<3C><02><02><02><02>4<><02>_<01> <09><><02>_<02><<3C><01><02><<3C><01>  <09><00><><00>HE An implementation of the [FowlerNollVo hash function][chongo].<2E>I<02>dM ## About<75>Z<02><00>^JG The FNV hash function is a custom `Hasher` implementation that is more<72><00><>$! efficient for smaller hash keys.<2E><1C><02><00><>NK [The Rust FAQ states that][faq] while the default `Hasher` implementation,<2C><00><>NK SipHash, is good in many cases, it is notably slower than other algorithms<6D><00><>MJ with short keys, such as when you have a map of integers to other values.<2E><00><>>; In cases like these, [FNV is demonstrably faster][graphs].<2E><1C><02><00><>FC Its disadvantages are that it performs badly on larger inputs, and<6E><00><>LI provides no protection against collision attacks, where a malicious user<65><00><>GD can craft specific keys designed to slow a hasher down. Thus, it is<69><00><>MJ important to profile your program to ensure that you are using small hash<73><00><>LI keys, and be certain that your program could not be exposed to malicious<75><00><>0- inputs (including being a networked server).<2E><1C><02><00><>A> The Rust compiler itself uses FNV, as it is not worried about<75><00><>MJ denial-of-service attacks, and can assume that its inputs are going to be<62><00><>'$ small—a perfect use case for FNV.<2E><1C><02><02><1C>  <0C> <00>
## Using FNV in a `HashMap`
The `FnvHashMap` type alias is the easiest way to use the standard librarys
`HashMap` with FNV.
```rust
use fnv::FnvHashMap;
let mut map = FnvHashMap::default();
map.insert(1, "one");
map.insert(2, "two");
map = FnvHashMap::with_capacity_and_hasher(10, Default::default());
map.insert(1, "one");
map.insert(2, "two");
```
Note, the standard librarys `HashMap::new` and `HashMap::with_capacity`
are only implemented for the `RandomState` hasher, so using `Default` to
get the hasher is the next best option.
## Using FNV in a `HashSet`
Similarly, `FnvHashSet` is a type alias for the standard librarys `HashSet`
with FNV.
```rust
use fnv::FnvHashSet;
let mut set = FnvHashSet::default();
set.insert(1);
set.insert(2);
set = FnvHashSet::with_capacity_and_hasher(10, Default::default());
set.insert(1);
set.insert(2);
```
<EFBFBD><01><01><> <09><01><> <09><1C><02><00><>B? [chongo]: http://www.isthe.com/chongo/tech/comp/fnv/index.html<6D><00><>OL [faq]: https://www.rust-lang.org/en-US/faq.html#why-are-rusts-hashmaps-slow<6F><00><>63 [graphs]: https://cglab.ca/~abeinges/blah/hash-rs/<2F>
<02>E<02>T<02><02>T<02><02>y<02>_<01> <13><02>_<02><13><01><02><13><01>  <04><>T<06><>'yy<13><13><06><>$<13><13><13><13><13><00><>>; An implementation of the FowlerNollVo hash function.<2E><1C><02><00><>?< See the [crate documentation](index.html) for more details.<2E>L<><00> <08><><17>5<EFBFBD><35> <02> <0A> <13>1<02> <0A> 

<1C>

<00> Ե<00> <02><00><><<3C><01>   t<><00> <00><>&<00><><9 Create an FNV hasher starting with a state corresponding<6E><00><> to the hash `key`.<2E>D<EFBFBD><02> <0A>  key<65><1C><00><><00> <02>_<02>_<00><>4<> <1A> <00>  <0C> $<24><00><>!,<2C> <1B>  
 <0C> $<24>bytes<65>,<2C><00><><00><>&# A builder for default FNV hashers.<2E>t<EFBFBD><02>_<02>_<02>_<01> <02>_<02><02>^ 9<13><>O<EFBFBD><4F><01> ̒<00><>+( A `HashMap` using a default FNV hasher.<2E>T<EFBFBD><01>
<01>
<02><><01>
<0C><02><><01>
<0C><01><01><02><01>base<73><01>Q<16>*T<>G<EFBFBD><01>*<01>*<01>)PRJL<00><><00><>+( A `HashSet` using a default FNV hasher.<2E>T<EFBFBD><02><02><><02> <0C><01> <01> <02><01> <01>)<01> <00>90<39>F<EFBFBD><46><EFBFBD><01>,<01>)68gEE <0C>E4http://www.isthe.com/chongo/tech/comp/fnv/index.html<6D> FowlerNollVo hash function<6F>The Rust FAQ states that<61>(https://cglab.ca/~abeinges/blah/hash-rs/<2F>crate documentation<6F>
index.html<6D>(https://www.rust-lang.org/en-US/faq.html<6D>FNV is demonstrably faster<65><01>,<01>+<01>,<01>,<01>-<01>-<01>-<01>-<01>,<01>,<01>-<01>+<01>,<01>-<01>-<01>-H7<48>DLv<4C>$<24>բ._i#Oy@<40><>ߝ<EFBFBD><DF9D><12>K<EFBFBD>Pr<13>3<11>լ<EFBFBD><01>S! <0A><><1D>a<7F>#<23>`<60>8<EFBFBD><38>I<EFBFBD>*<2A><>%<25><>^x8V~
<EFBFBD><EFBFBD>l<EFBFBD><EFBFBD>/0D<30>I<EFBFBD><49>,<2C>I&<26>q<EFBFBD><71><EFBFBD><EFBFBD>ժ~<7E><>jK<05>v<EFBFBD><76><EFBFBD>+<2B>a<EFBFBD>4\<5C><>b<EFBFBD><62>Jt4<74><07><1B>0<02><><EFBFBD><EFBFBD><EFBFBD>E<1B>:<3A><EFBFBD>A<>m<EFBFBD>Hd<48>@<11><><EFBFBD><EFBFBD>R><3E>%[<5B>S<EFBFBD>92<39><32>'<27>.)<29><>M\<5C><13><><<3C><>g280a)Hi<48><69><EFBFBD>߈<EFBFBD> <09>Ƨ'~m<><6D>l<18>w<EFBFBD>4<EFBFBD>m<><6D>Gz<47><00>^<10> #=l<12>B<13><13>b:Y<00>/x+%  X<00><11>P<00>U<13>"<14>r<02><06><10><10><10><10><10><10><10> <11> 9h{><13><13>^)6<15><15><15><15><00><00><00><10><11><11> =<00>B<13><14>+n<15><15><15><15><00><11>+`t'w<13>)<14>&3<15><15><00><11>%Xn!k<13>#<14> -s<15><00>-dv ){<13>+<14><00><00><11>Q<00>V<13><00><11>Q<00>V<13><00>A<00>F<13><00><00>(5<00><00><h<13>V<00>#l<00><00><11><04><04><04><04><04><04><04><04><04><04><04>
'+8DYjrz<05><05><05><05><00>0y-2<13>5z7EEEE<02> H7<48>DLv<4C>$<24><>m<>i<>9<1D><1C><1C>)<1D>ODHT @<02><><00>Ƨ'~m<><00><><EFBFBD>A<>m<EFBFBD><00><1B>0<02><><EFBFBD><00>ժ~<7E><>j 8<><38>I<EFBFBD>*<2A><><00>R><3E>%[<5B>H7<48>DLv<4C>$<01>S! <0A><>Hd<48>@<11><><EFBFBD><13><><<3C><>0D<30>I<EFBFBD><49>,
m<><6D>Gz<47><00><>E<1B>:<3A><><00>բ._i#Oi<><69><EFBFBD>߈<EFBFBD> g280a)Hy@<40><>ߝ<EFBFBD><DF9D><00>a<7F>#<23>`<60><00>3<11>լ<EFBFBD>~
<EFBFBD><EFBFBD>l<EFBFBD><EFBFBD>/ <00>I&<26>q<EFBFBD><71><EFBFBD> S<>92<39><32>'+<2B>a<EFBFBD>4\<5C><>b<><62>Jt4<74><00>.)<29><>M\<5C><00>l<18>w<EFBFBD>4<EFBFBD>%<25><>^x8V<12>K<EFBFBD>PrK<05>v<EFBFBD><76><EFBFBD> JQF5<46><35><EFBFBD>}K<><4B><EFBFBD><0E><><EFBFBD>He<><65><EFBFBD><EFBFBD>p<EFBFBD><70><EFBFBD><EFBFBD><EFBFBD>'$~XB<58><42><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><17><><EFBFBD><EFBFBD>{<13>phl+<2B><><EFBFBD><EFBFBD><EFBFBD> aJQF5<46><35><EFBFBD>}K<><4B><EFBFBD><0E><>SC:\Users\dxzq\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\fnv-1.0.7\lib.rs<72> <20>tR<74>[<5B><>/Kr<4B>b.<2E>E<00><><01>I K%OON?GMHNM1BN('O%DKI(O
%DCP7+(-*.?@' &A-()#*5
!'9,;,5 !$/,>-? 45555556789:677777789:;<6789:;<=>?@ABCDF89:;<=>?@ABCDEFH6789:;<=>?@ABD89:;<=>?@ABCDF689;DDDDDDDDDDDDDD=?=?=??A?A?A<>DFDFJVXVXbdIHPVjecjQRYH``bP_HS[XZcidgihmlmu`\`_U^OJz}LNgSWQd]jEFIHHEFIHHLQXP`P`P`P`EEBE$+<03><03> <03> <03><03><03>3<>/<17><07>9<EFBFBD>r<EFBFBD>X<EFBFBD>)<29>P<00> x86_64-pc-windows-gnu<6E><16><>ne<6E>e<EFBFBD><65><EFBFBD><EFBFBD>Y<EFBFBD><59><EFBFBD>fnv<6E>-9db4f5ac75f1911d<31>H7<48>DLv<4C>$<14>E<05><02><00>"<00> !K6 2 ::442<(($4   <$  : ({<01> rust-end-file