39 double loadFactor= std::get<0>( values );
40 double deviation = std::get<1>( values );
41 integer minSize = std::get<2>( values );
42 integer maxSize = std::get<3>( values );
45 formatter.GetArgContainer();
46 formatter.Format( result,
"Size: {}\n"
48 "Load Factor: {:.02} (Base: {:.01} Max: {:.01})\n"
49 "Deviation: {:.02} (~{:%.1})\n"
53 hashtable.BucketCount(),
54 loadFactor, hashtable.BaseLoadFactor(), hashtable.MaxLoadFactor(),
55 deviation , ( hashtable.Size() != 0
56 ? deviation / loadFactor
63 for(
integer i= 0; i < maxSize ; ++i)
66 for(
uinteger i= 0; i < hashtable.BucketCount() ; ++i)
67 ++bucketFills[hashtable.BucketSize(i)];
69 formatter.Format( result,
"Bucket Fills: Size #Buckets\n" );
70 formatter.Format( result,
" -----------------\n" );
71 for(
integer i= 0; i < maxSize ; ++i)
72 formatter.Format( result,
" {} {}\n", i, bucketFills[i] );
77 if( detailedBucketList ) {
78 formatter.Format(result,
"\nDetailed Bucket List:\n");
79 auto qtyBuckets = hashtable.BucketCount();
80 for(
uinteger i= 0 ; i < qtyBuckets ; ++i ) {
81 auto bucketSize= hashtable.BucketSize( i );
82 formatter.Format(result,
"{:3} ({:2}): {!FillCX}\n", i, bucketSize,
124 formatter.GetArgContainer();
125 formatter.Format(result,
"\nHashtable dump:\n");
126 auto qtyBuckets = hashtable.BucketCount();
127 for(
uinteger i= 0 ; i < qtyBuckets ; ++i ) {
128 auto bucketSize= hashtable.BucketSize( i );
129 formatter.Format(result,
"{:3} ({:2}): ", i, bucketSize );
132 for(
auto bucketIt= hashtable.begin(i)
133 ; bucketIt != hashtable.end (i)
138 formatter.Format(result,
"{}: {}\n", entryNo, *bucketIt );