mirror of
https://github.com/XRPLF/rippled.git
synced 2025-12-06 17:27:55 +00:00
New hash_append robust container hash function framework:
* is_contiguous_hashable trait identifies optimizable types * hash_append() function overloads for basic types: - scalars, floats - array, C array - pair, tuple - boost array and tuple (if configured) * Provided Spooky hash wrapper for use with hash_append * Use hash_append in hardened_hash and other places * New Utility meta functions for working with variadics: - static_and - static_sum * Added type_name utility function for diagnostics * hash_metrics suite of functions to evalulate hash functions * Test suites to measure hash function performance * Various fixes
This commit is contained in:
committed by
Vinnie Falco
parent
6b467e7e59
commit
2ab7cfbf30
@@ -66,6 +66,7 @@
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
</None>
|
||||
<None Include="..\..\README.md" />
|
||||
<None Include="..\..\SConstruct" />
|
||||
<None Include="..\..\scripts\compile.sh" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
@@ -130,6 +131,9 @@
|
||||
<ClInclude Include="..\..\beast\container\detail\aged_unordered_container.h" />
|
||||
<ClInclude Include="..\..\beast\container\buffer_view.h" />
|
||||
<ClInclude Include="..\..\beast\container\hardened_hash.h" />
|
||||
<ClInclude Include="..\..\beast\container\hash_append.h" />
|
||||
<ClInclude Include="..\..\beast\container\impl\spookyv2.h" />
|
||||
<ClInclude Include="..\..\beast\container\tests\hash_metrics.h" />
|
||||
<ClInclude Include="..\..\beast\Crypto.h" />
|
||||
<ClInclude Include="..\..\beast\crypto\BinaryEncoding.h" />
|
||||
<ClInclude Include="..\..\beast\crypto\impl\sha2\sha2.h" />
|
||||
@@ -245,9 +249,11 @@
|
||||
<ClInclude Include="..\..\beast\utility\Journal.h" />
|
||||
<ClInclude Include="..\..\beast\utility\LeakChecked.h" />
|
||||
<ClInclude Include="..\..\beast\utility\maybe_const.h" />
|
||||
<ClInclude Include="..\..\beast\utility\meta.h" />
|
||||
<ClInclude Include="..\..\beast\utility\noexcept.h" />
|
||||
<ClInclude Include="..\..\beast\utility\PropertyStream.h" />
|
||||
<ClInclude Include="..\..\beast\utility\StaticObject.h" />
|
||||
<ClInclude Include="..\..\beast\utility\type_name.h" />
|
||||
<ClInclude Include="..\..\beast\Version.h" />
|
||||
<ClInclude Include="..\..\modules\beast_asio\async\AsyncObject.h" />
|
||||
<ClInclude Include="..\..\modules\beast_asio\basics\FixedInputBuffer.h" />
|
||||
@@ -430,6 +436,12 @@
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\beast\container\Container.cpp" />
|
||||
<ClCompile Include="..\..\beast\container\impl\spookyv2.cpp">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\beast\container\tests\aged_associative_container.test.cpp">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||
@@ -448,6 +460,12 @@
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\beast\container\tests\hash_append.test.cpp">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\beast\crypto\Crypto.cpp" />
|
||||
<ClCompile Include="..\..\beast\crypto\impl\MurmurHash.cpp">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||
|
||||
@@ -70,6 +70,7 @@
|
||||
<None Include="..\..\beast\asio\README.md">
|
||||
<Filter>beast\asio</Filter>
|
||||
</None>
|
||||
<None Include="..\..\SConstruct" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Filter Include="beast_core">
|
||||
@@ -303,6 +304,9 @@
|
||||
<Filter Include="beast_asio\scripts">
|
||||
<UniqueIdentifier>{c65af439-8c23-46c3-9b95-7da15651e5f6}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="beast\container\impl">
|
||||
<UniqueIdentifier>{18193ca8-bfb0-48af-b401-52ead0015ba5}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\modules\beast_core\beast_core.h">
|
||||
@@ -1185,6 +1189,21 @@
|
||||
<ClInclude Include="..\..\beast\container\hardened_hash.h">
|
||||
<Filter>beast\container</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\beast\utility\meta.h">
|
||||
<Filter>beast\utility</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\beast\container\impl\spookyv2.h">
|
||||
<Filter>beast\container\impl</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\beast\container\hash_append.h">
|
||||
<Filter>beast\container</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\beast\container\tests\hash_metrics.h">
|
||||
<Filter>beast\container\tests</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\beast\utility\type_name.h">
|
||||
<Filter>beast\utility</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\modules\beast_core\files\DirectoryIterator.cpp">
|
||||
@@ -1643,6 +1662,12 @@
|
||||
<ClCompile Include="..\..\beast\container\tests\hardened_hash.test.cpp">
|
||||
<Filter>beast\container\tests</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\beast\container\tests\hash_append.test.cpp">
|
||||
<Filter>beast\container\tests</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\beast\container\impl\spookyv2.cpp">
|
||||
<Filter>beast\container\impl</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Text Include="..\..\TODO.txt">
|
||||
|
||||
Reference in New Issue
Block a user