@ladybugmem/icebug 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (625) hide show
  1. package/binding.gyp +32 -10
  2. package/lib/index.js +23 -11
  3. package/package.json +9 -15
  4. package/prebuilds/darwin-arm64/icebug.node +0 -0
  5. package/{vendor/lib → prebuilds/darwin-arm64}/libnetworkit.dylib +0 -0
  6. package/prebuilds/linux-x64/icebug.node +0 -0
  7. package/prebuilds/linux-x64/libnetworkit.so +0 -0
  8. package/scripts/download-icebug.sh +92 -0
  9. package/build/Release/.deps/Release/icebug.node.d +0 -1
  10. package/build/Release/.deps/Release/obj.target/icebug/src/addon.o.d +0 -291
  11. package/build/Release/icebug.node +0 -0
  12. package/build/Release/obj.target/icebug/src/addon.o +0 -0
  13. package/vendor/include/networkit/GlobalState.hpp +0 -86
  14. package/vendor/include/networkit/Globals.hpp +0 -41
  15. package/vendor/include/networkit/algebraic/AlgebraicGlobals.hpp +0 -27
  16. package/vendor/include/networkit/algebraic/CSRGeneralMatrix.hpp +0 -1292
  17. package/vendor/include/networkit/algebraic/CSRMatrix.hpp +0 -11
  18. package/vendor/include/networkit/algebraic/DenseMatrix.hpp +0 -537
  19. package/vendor/include/networkit/algebraic/DynamicMatrix.hpp +0 -514
  20. package/vendor/include/networkit/algebraic/GraphBLAS.hpp +0 -323
  21. package/vendor/include/networkit/algebraic/MatrixTools.hpp +0 -156
  22. package/vendor/include/networkit/algebraic/Semirings.hpp +0 -171
  23. package/vendor/include/networkit/algebraic/SparseAccumulator.hpp +0 -111
  24. package/vendor/include/networkit/algebraic/Vector.hpp +0 -371
  25. package/vendor/include/networkit/algebraic/algorithms/AlgebraicBFS.hpp +0 -72
  26. package/vendor/include/networkit/algebraic/algorithms/AlgebraicBellmanFord.hpp +0 -88
  27. package/vendor/include/networkit/algebraic/algorithms/AlgebraicMatchingCoarsening.hpp +0 -96
  28. package/vendor/include/networkit/algebraic/algorithms/AlgebraicPageRank.hpp +0 -145
  29. package/vendor/include/networkit/algebraic/algorithms/AlgebraicSpanningEdgeCentrality.hpp +0 -122
  30. package/vendor/include/networkit/algebraic/algorithms/AlgebraicTriangleCounting.hpp +0 -76
  31. package/vendor/include/networkit/auxiliary/AlignedAllocator.hpp +0 -113
  32. package/vendor/include/networkit/auxiliary/ArrayTools.hpp +0 -85
  33. package/vendor/include/networkit/auxiliary/BloomFilter.hpp +0 -70
  34. package/vendor/include/networkit/auxiliary/BucketPQ.hpp +0 -142
  35. package/vendor/include/networkit/auxiliary/Enforce.hpp +0 -117
  36. package/vendor/include/networkit/auxiliary/FunctionTraits.hpp +0 -74
  37. package/vendor/include/networkit/auxiliary/HashUtils.hpp +0 -28
  38. package/vendor/include/networkit/auxiliary/IncrementalUniformRandomSelector.hpp +0 -52
  39. package/vendor/include/networkit/auxiliary/Log.hpp +0 -119
  40. package/vendor/include/networkit/auxiliary/MissingMath.hpp +0 -48
  41. package/vendor/include/networkit/auxiliary/Multiprecision.hpp +0 -17
  42. package/vendor/include/networkit/auxiliary/NumberParsing.hpp +0 -307
  43. package/vendor/include/networkit/auxiliary/NumericTools.hpp +0 -57
  44. package/vendor/include/networkit/auxiliary/Parallel.hpp +0 -56
  45. package/vendor/include/networkit/auxiliary/Parallelism.hpp +0 -33
  46. package/vendor/include/networkit/auxiliary/PrioQueue.hpp +0 -252
  47. package/vendor/include/networkit/auxiliary/Random.hpp +0 -122
  48. package/vendor/include/networkit/auxiliary/SetIntersector.hpp +0 -72
  49. package/vendor/include/networkit/auxiliary/SignalHandling.hpp +0 -39
  50. package/vendor/include/networkit/auxiliary/SortedList.hpp +0 -128
  51. package/vendor/include/networkit/auxiliary/SparseVector.hpp +0 -215
  52. package/vendor/include/networkit/auxiliary/SpinLock.hpp +0 -23
  53. package/vendor/include/networkit/auxiliary/StringBuilder.hpp +0 -322
  54. package/vendor/include/networkit/auxiliary/StringTools.hpp +0 -76
  55. package/vendor/include/networkit/auxiliary/TemplateUtils.hpp +0 -76
  56. package/vendor/include/networkit/auxiliary/Timer.hpp +0 -145
  57. package/vendor/include/networkit/auxiliary/VectorComparator.hpp +0 -32
  58. package/vendor/include/networkit/base/Algorithm.hpp +0 -41
  59. package/vendor/include/networkit/base/DynAlgorithm.hpp +0 -31
  60. package/vendor/include/networkit/centrality/ApproxBetweenness.hpp +0 -62
  61. package/vendor/include/networkit/centrality/ApproxCloseness.hpp +0 -136
  62. package/vendor/include/networkit/centrality/ApproxElectricalCloseness.hpp +0 -156
  63. package/vendor/include/networkit/centrality/ApproxGroupBetweenness.hpp +0 -124
  64. package/vendor/include/networkit/centrality/ApproxSpanningEdge.hpp +0 -84
  65. package/vendor/include/networkit/centrality/Betweenness.hpp +0 -47
  66. package/vendor/include/networkit/centrality/Centrality.hpp +0 -98
  67. package/vendor/include/networkit/centrality/Closeness.hpp +0 -107
  68. package/vendor/include/networkit/centrality/ComplexPaths.hpp +0 -113
  69. package/vendor/include/networkit/centrality/CoreDecomposition.hpp +0 -161
  70. package/vendor/include/networkit/centrality/DegreeCentrality.hpp +0 -55
  71. package/vendor/include/networkit/centrality/DynApproxBetweenness.hpp +0 -95
  72. package/vendor/include/networkit/centrality/DynBetweenness.hpp +0 -99
  73. package/vendor/include/networkit/centrality/DynBetweennessOneNode.hpp +0 -98
  74. package/vendor/include/networkit/centrality/DynKatzCentrality.hpp +0 -115
  75. package/vendor/include/networkit/centrality/DynTopHarmonicCloseness.hpp +0 -223
  76. package/vendor/include/networkit/centrality/EigenvectorCentrality.hpp +0 -41
  77. package/vendor/include/networkit/centrality/EstimateBetweenness.hpp +0 -51
  78. package/vendor/include/networkit/centrality/ForestCentrality.hpp +0 -112
  79. package/vendor/include/networkit/centrality/GedWalk.hpp +0 -225
  80. package/vendor/include/networkit/centrality/GroupCloseness.hpp +0 -115
  81. package/vendor/include/networkit/centrality/GroupClosenessGrowShrink.hpp +0 -78
  82. package/vendor/include/networkit/centrality/GroupClosenessLocalSearch.hpp +0 -77
  83. package/vendor/include/networkit/centrality/GroupClosenessLocalSwaps.hpp +0 -106
  84. package/vendor/include/networkit/centrality/GroupDegree.hpp +0 -155
  85. package/vendor/include/networkit/centrality/GroupHarmonicCloseness.hpp +0 -83
  86. package/vendor/include/networkit/centrality/HarmonicCloseness.hpp +0 -48
  87. package/vendor/include/networkit/centrality/KPathCentrality.hpp +0 -52
  88. package/vendor/include/networkit/centrality/KadabraBetweenness.hpp +0 -242
  89. package/vendor/include/networkit/centrality/KatzCentrality.hpp +0 -62
  90. package/vendor/include/networkit/centrality/LaplacianCentrality.hpp +0 -44
  91. package/vendor/include/networkit/centrality/LocalClusteringCoefficient.hpp +0 -60
  92. package/vendor/include/networkit/centrality/LocalPartitionCoverage.hpp +0 -43
  93. package/vendor/include/networkit/centrality/LocalSquareClusteringCoefficient.hpp +0 -42
  94. package/vendor/include/networkit/centrality/PageRank.hpp +0 -101
  95. package/vendor/include/networkit/centrality/PermanenceCentrality.hpp +0 -48
  96. package/vendor/include/networkit/centrality/Sfigality.hpp +0 -45
  97. package/vendor/include/networkit/centrality/SpanningEdgeCentrality.hpp +0 -86
  98. package/vendor/include/networkit/centrality/TopCloseness.hpp +0 -136
  99. package/vendor/include/networkit/centrality/TopHarmonicCloseness.hpp +0 -151
  100. package/vendor/include/networkit/clique/MaximalCliques.hpp +0 -83
  101. package/vendor/include/networkit/coarsening/ClusteringProjector.hpp +0 -59
  102. package/vendor/include/networkit/coarsening/CoarsenedGraphView.hpp +0 -156
  103. package/vendor/include/networkit/coarsening/GraphCoarsening.hpp +0 -57
  104. package/vendor/include/networkit/coarsening/MatchingCoarsening.hpp +0 -43
  105. package/vendor/include/networkit/coarsening/ParallelPartitionCoarsening.hpp +0 -33
  106. package/vendor/include/networkit/coarsening/ParallelPartitionCoarseningView.hpp +0 -62
  107. package/vendor/include/networkit/community/AdjustedRandMeasure.hpp +0 -31
  108. package/vendor/include/networkit/community/ClusteringGenerator.hpp +0 -75
  109. package/vendor/include/networkit/community/CommunityDetectionAlgorithm.hpp +0 -58
  110. package/vendor/include/networkit/community/Conductance.hpp +0 -32
  111. package/vendor/include/networkit/community/CoverF1Similarity.hpp +0 -53
  112. package/vendor/include/networkit/community/CoverHubDominance.hpp +0 -38
  113. package/vendor/include/networkit/community/Coverage.hpp +0 -25
  114. package/vendor/include/networkit/community/CutClustering.hpp +0 -62
  115. package/vendor/include/networkit/community/DissimilarityMeasure.hpp +0 -31
  116. package/vendor/include/networkit/community/DynamicNMIDistance.hpp +0 -44
  117. package/vendor/include/networkit/community/EdgeCut.hpp +0 -24
  118. package/vendor/include/networkit/community/GraphClusteringTools.hpp +0 -103
  119. package/vendor/include/networkit/community/GraphStructuralRandMeasure.hpp +0 -28
  120. package/vendor/include/networkit/community/HubDominance.hpp +0 -46
  121. package/vendor/include/networkit/community/IntrapartitionDensity.hpp +0 -44
  122. package/vendor/include/networkit/community/IsolatedInterpartitionConductance.hpp +0 -40
  123. package/vendor/include/networkit/community/IsolatedInterpartitionExpansion.hpp +0 -40
  124. package/vendor/include/networkit/community/JaccardMeasure.hpp +0 -25
  125. package/vendor/include/networkit/community/LFM.hpp +0 -49
  126. package/vendor/include/networkit/community/LPDegreeOrdered.hpp +0 -48
  127. package/vendor/include/networkit/community/LocalCommunityEvaluation.hpp +0 -100
  128. package/vendor/include/networkit/community/LocalCoverEvaluation.hpp +0 -31
  129. package/vendor/include/networkit/community/LocalPartitionEvaluation.hpp +0 -31
  130. package/vendor/include/networkit/community/LouvainMapEquation.hpp +0 -135
  131. package/vendor/include/networkit/community/Modularity.hpp +0 -54
  132. package/vendor/include/networkit/community/NMIDistance.hpp +0 -28
  133. package/vendor/include/networkit/community/NodeStructuralRandMeasure.hpp +0 -27
  134. package/vendor/include/networkit/community/OverlappingCommunityDetectionAlgorithm.hpp +0 -51
  135. package/vendor/include/networkit/community/OverlappingNMIDistance.hpp +0 -175
  136. package/vendor/include/networkit/community/PLM.hpp +0 -89
  137. package/vendor/include/networkit/community/PLP.hpp +0 -83
  138. package/vendor/include/networkit/community/ParallelAgglomerativeClusterer.hpp +0 -37
  139. package/vendor/include/networkit/community/ParallelLeiden.hpp +0 -96
  140. package/vendor/include/networkit/community/ParallelLeidenView.hpp +0 -138
  141. package/vendor/include/networkit/community/PartitionFragmentation.hpp +0 -30
  142. package/vendor/include/networkit/community/PartitionHubDominance.hpp +0 -37
  143. package/vendor/include/networkit/community/PartitionIntersection.hpp +0 -25
  144. package/vendor/include/networkit/community/QualityMeasure.hpp +0 -27
  145. package/vendor/include/networkit/community/SampledGraphStructuralRandMeasure.hpp +0 -40
  146. package/vendor/include/networkit/community/SampledNodeStructuralRandMeasure.hpp +0 -40
  147. package/vendor/include/networkit/community/StablePartitionNodes.hpp +0 -48
  148. package/vendor/include/networkit/components/BiconnectedComponents.hpp +0 -116
  149. package/vendor/include/networkit/components/ComponentDecomposition.hpp +0 -72
  150. package/vendor/include/networkit/components/ConnectedComponents.hpp +0 -55
  151. package/vendor/include/networkit/components/DynConnectedComponents.hpp +0 -71
  152. package/vendor/include/networkit/components/DynWeaklyConnectedComponents.hpp +0 -73
  153. package/vendor/include/networkit/components/ParallelConnectedComponents.hpp +0 -44
  154. package/vendor/include/networkit/components/RandomSpanningForest.hpp +0 -36
  155. package/vendor/include/networkit/components/StronglyConnectedComponents.hpp +0 -50
  156. package/vendor/include/networkit/components/WeaklyConnectedComponents.hpp +0 -59
  157. package/vendor/include/networkit/correlation/Assortativity.hpp +0 -64
  158. package/vendor/include/networkit/distance/APSP.hpp +0 -70
  159. package/vendor/include/networkit/distance/AStar.hpp +0 -68
  160. package/vendor/include/networkit/distance/AStarGeneral.hpp +0 -110
  161. package/vendor/include/networkit/distance/AdamicAdarDistance.hpp +0 -52
  162. package/vendor/include/networkit/distance/AffectedNodes.hpp +0 -130
  163. package/vendor/include/networkit/distance/AlgebraicDistance.hpp +0 -63
  164. package/vendor/include/networkit/distance/BFS.hpp +0 -43
  165. package/vendor/include/networkit/distance/BidirectionalBFS.hpp +0 -51
  166. package/vendor/include/networkit/distance/BidirectionalDijkstra.hpp +0 -69
  167. package/vendor/include/networkit/distance/CommuteTimeDistance.hpp +0 -89
  168. package/vendor/include/networkit/distance/Diameter.hpp +0 -97
  169. package/vendor/include/networkit/distance/Dijkstra.hpp +0 -50
  170. package/vendor/include/networkit/distance/DynAPSP.hpp +0 -67
  171. package/vendor/include/networkit/distance/DynBFS.hpp +0 -56
  172. package/vendor/include/networkit/distance/DynDijkstra.hpp +0 -57
  173. package/vendor/include/networkit/distance/DynPrunedLandmarkLabeling.hpp +0 -67
  174. package/vendor/include/networkit/distance/DynSSSP.hpp +0 -87
  175. package/vendor/include/networkit/distance/Eccentricity.hpp +0 -32
  176. package/vendor/include/networkit/distance/EffectiveDiameter.hpp +0 -47
  177. package/vendor/include/networkit/distance/EffectiveDiameterApproximation.hpp +0 -57
  178. package/vendor/include/networkit/distance/FloydWarshall.hpp +0 -93
  179. package/vendor/include/networkit/distance/GraphDistance.hpp +0 -49
  180. package/vendor/include/networkit/distance/HopPlotApproximation.hpp +0 -62
  181. package/vendor/include/networkit/distance/IncompleteDijkstra.hpp +0 -66
  182. package/vendor/include/networkit/distance/IncompleteSSSP.hpp +0 -41
  183. package/vendor/include/networkit/distance/JaccardDistance.hpp +0 -57
  184. package/vendor/include/networkit/distance/MultiTargetBFS.hpp +0 -32
  185. package/vendor/include/networkit/distance/MultiTargetDijkstra.hpp +0 -40
  186. package/vendor/include/networkit/distance/NeighborhoodFunction.hpp +0 -47
  187. package/vendor/include/networkit/distance/NeighborhoodFunctionApproximation.hpp +0 -56
  188. package/vendor/include/networkit/distance/NeighborhoodFunctionHeuristic.hpp +0 -56
  189. package/vendor/include/networkit/distance/NodeDistance.hpp +0 -54
  190. package/vendor/include/networkit/distance/PrunedLandmarkLabeling.hpp +0 -76
  191. package/vendor/include/networkit/distance/ReverseBFS.hpp +0 -46
  192. package/vendor/include/networkit/distance/SPSP.hpp +0 -143
  193. package/vendor/include/networkit/distance/SSSP.hpp +0 -216
  194. package/vendor/include/networkit/distance/STSP.hpp +0 -193
  195. package/vendor/include/networkit/distance/Volume.hpp +0 -66
  196. package/vendor/include/networkit/dynamics/DGSStreamParser.hpp +0 -40
  197. package/vendor/include/networkit/dynamics/DGSWriter.hpp +0 -30
  198. package/vendor/include/networkit/dynamics/GraphDifference.hpp +0 -110
  199. package/vendor/include/networkit/dynamics/GraphEvent.hpp +0 -55
  200. package/vendor/include/networkit/dynamics/GraphEventHandler.hpp +0 -39
  201. package/vendor/include/networkit/dynamics/GraphEventProxy.hpp +0 -55
  202. package/vendor/include/networkit/dynamics/GraphUpdater.hpp +0 -38
  203. package/vendor/include/networkit/edgescores/ChibaNishizekiQuadrangleEdgeScore.hpp +0 -26
  204. package/vendor/include/networkit/edgescores/ChibaNishizekiTriangleEdgeScore.hpp +0 -33
  205. package/vendor/include/networkit/edgescores/EdgeScore.hpp +0 -50
  206. package/vendor/include/networkit/edgescores/EdgeScoreAsWeight.hpp +0 -33
  207. package/vendor/include/networkit/edgescores/EdgeScoreBlender.hpp +0 -33
  208. package/vendor/include/networkit/edgescores/EdgeScoreLinearizer.hpp +0 -32
  209. package/vendor/include/networkit/edgescores/EdgeScoreNormalizer.hpp +0 -35
  210. package/vendor/include/networkit/edgescores/GeometricMeanScore.hpp +0 -29
  211. package/vendor/include/networkit/edgescores/PrefixJaccardScore.hpp +0 -23
  212. package/vendor/include/networkit/edgescores/TriangleEdgeScore.hpp +0 -39
  213. package/vendor/include/networkit/embedding/Node2Vec.hpp +0 -83
  214. package/vendor/include/networkit/flow/EdmondsKarp.hpp +0 -112
  215. package/vendor/include/networkit/generators/BarabasiAlbertGenerator.hpp +0 -87
  216. package/vendor/include/networkit/generators/ChungLuGenerator.hpp +0 -46
  217. package/vendor/include/networkit/generators/ChungLuGeneratorAlamEtAl.hpp +0 -63
  218. package/vendor/include/networkit/generators/ClusteredRandomGraphGenerator.hpp +0 -56
  219. package/vendor/include/networkit/generators/ConfigurationModel.hpp +0 -36
  220. package/vendor/include/networkit/generators/DorogovtsevMendesGenerator.hpp +0 -33
  221. package/vendor/include/networkit/generators/DynamicBarabasiAlbertGenerator.hpp +0 -33
  222. package/vendor/include/networkit/generators/DynamicDGSParser.hpp +0 -51
  223. package/vendor/include/networkit/generators/DynamicDorogovtsevMendesGenerator.hpp +0 -34
  224. package/vendor/include/networkit/generators/DynamicForestFireGenerator.hpp +0 -55
  225. package/vendor/include/networkit/generators/DynamicGraphGenerator.hpp +0 -40
  226. package/vendor/include/networkit/generators/DynamicGraphSource.hpp +0 -79
  227. package/vendor/include/networkit/generators/DynamicHyperbolicGenerator.hpp +0 -143
  228. package/vendor/include/networkit/generators/DynamicPathGenerator.hpp +0 -26
  229. package/vendor/include/networkit/generators/DynamicPubWebGenerator.hpp +0 -54
  230. package/vendor/include/networkit/generators/EdgeSwitchingMarkovChainGenerator.hpp +0 -65
  231. package/vendor/include/networkit/generators/ErdosRenyiEnumerator.hpp +0 -318
  232. package/vendor/include/networkit/generators/ErdosRenyiGenerator.hpp +0 -56
  233. package/vendor/include/networkit/generators/HavelHakimiGenerator.hpp +0 -48
  234. package/vendor/include/networkit/generators/HyperbolicGenerator.hpp +0 -236
  235. package/vendor/include/networkit/generators/LFRGenerator.hpp +0 -175
  236. package/vendor/include/networkit/generators/MocnikGenerator.hpp +0 -147
  237. package/vendor/include/networkit/generators/MocnikGeneratorBasic.hpp +0 -58
  238. package/vendor/include/networkit/generators/PowerlawDegreeSequence.hpp +0 -128
  239. package/vendor/include/networkit/generators/PubWebGenerator.hpp +0 -94
  240. package/vendor/include/networkit/generators/RegularRingLatticeGenerator.hpp +0 -37
  241. package/vendor/include/networkit/generators/RmatGenerator.hpp +0 -67
  242. package/vendor/include/networkit/generators/StaticDegreeSequenceGenerator.hpp +0 -42
  243. package/vendor/include/networkit/generators/StaticGraphGenerator.hpp +0 -30
  244. package/vendor/include/networkit/generators/StochasticBlockmodel.hpp +0 -41
  245. package/vendor/include/networkit/generators/WattsStrogatzGenerator.hpp +0 -43
  246. package/vendor/include/networkit/generators/quadtree/QuadNode.hpp +0 -857
  247. package/vendor/include/networkit/generators/quadtree/QuadNodeCartesianEuclid.hpp +0 -587
  248. package/vendor/include/networkit/generators/quadtree/QuadNodePolarEuclid.hpp +0 -726
  249. package/vendor/include/networkit/generators/quadtree/Quadtree.hpp +0 -232
  250. package/vendor/include/networkit/generators/quadtree/QuadtreeCartesianEuclid.hpp +0 -149
  251. package/vendor/include/networkit/generators/quadtree/QuadtreePolarEuclid.hpp +0 -143
  252. package/vendor/include/networkit/geometric/HyperbolicSpace.hpp +0 -248
  253. package/vendor/include/networkit/geometric/Point2DWithIndex.hpp +0 -145
  254. package/vendor/include/networkit/global/ClusteringCoefficient.hpp +0 -42
  255. package/vendor/include/networkit/global/GlobalClusteringCoefficient.hpp +0 -24
  256. package/vendor/include/networkit/graph/Attributes.hpp +0 -568
  257. package/vendor/include/networkit/graph/BFS.hpp +0 -111
  258. package/vendor/include/networkit/graph/DFS.hpp +0 -71
  259. package/vendor/include/networkit/graph/Dijkstra.hpp +0 -83
  260. package/vendor/include/networkit/graph/EdgeIterators.hpp +0 -171
  261. package/vendor/include/networkit/graph/Graph.hpp +0 -2083
  262. package/vendor/include/networkit/graph/GraphBuilder.hpp +0 -289
  263. package/vendor/include/networkit/graph/GraphR.hpp +0 -133
  264. package/vendor/include/networkit/graph/GraphTools.hpp +0 -589
  265. package/vendor/include/networkit/graph/GraphW.hpp +0 -1236
  266. package/vendor/include/networkit/graph/KruskalMSF.hpp +0 -50
  267. package/vendor/include/networkit/graph/NeighborIterators.hpp +0 -163
  268. package/vendor/include/networkit/graph/NodeIterators.hpp +0 -127
  269. package/vendor/include/networkit/graph/PrimMSF.hpp +0 -66
  270. package/vendor/include/networkit/graph/RandomMaximumSpanningForest.hpp +0 -133
  271. package/vendor/include/networkit/graph/SpanningForest.hpp +0 -41
  272. package/vendor/include/networkit/graph/TopologicalSort.hpp +0 -87
  273. package/vendor/include/networkit/graph/UnionMaximumSpanningForest.hpp +0 -126
  274. package/vendor/include/networkit/graph/test/GraphBuilderBenchmark.hpp +0 -68
  275. package/vendor/include/networkit/independentset/IndependentSetFinder.hpp +0 -44
  276. package/vendor/include/networkit/independentset/Luby.hpp +0 -27
  277. package/vendor/include/networkit/io/BinaryEdgeListPartitionReader.hpp +0 -45
  278. package/vendor/include/networkit/io/BinaryEdgeListPartitionWriter.hpp +0 -47
  279. package/vendor/include/networkit/io/BinaryPartitionReader.hpp +0 -41
  280. package/vendor/include/networkit/io/BinaryPartitionWriter.hpp +0 -44
  281. package/vendor/include/networkit/io/CoverReader.hpp +0 -27
  282. package/vendor/include/networkit/io/CoverWriter.hpp +0 -21
  283. package/vendor/include/networkit/io/DGSReader.hpp +0 -39
  284. package/vendor/include/networkit/io/DibapGraphReader.hpp +0 -43
  285. package/vendor/include/networkit/io/DotGraphWriter.hpp +0 -39
  286. package/vendor/include/networkit/io/DotPartitionWriter.hpp +0 -23
  287. package/vendor/include/networkit/io/DynamicGraphReader.hpp +0 -29
  288. package/vendor/include/networkit/io/EdgeListCoverReader.hpp +0 -35
  289. package/vendor/include/networkit/io/EdgeListPartitionReader.hpp +0 -43
  290. package/vendor/include/networkit/io/EdgeListReader.hpp +0 -61
  291. package/vendor/include/networkit/io/EdgeListWriter.hpp +0 -48
  292. package/vendor/include/networkit/io/GMLGraphReader.hpp +0 -33
  293. package/vendor/include/networkit/io/GMLGraphWriter.hpp +0 -33
  294. package/vendor/include/networkit/io/GraphIO.hpp +0 -52
  295. package/vendor/include/networkit/io/GraphReader.hpp +0 -40
  296. package/vendor/include/networkit/io/GraphToolBinaryReader.hpp +0 -71
  297. package/vendor/include/networkit/io/GraphToolBinaryWriter.hpp +0 -61
  298. package/vendor/include/networkit/io/GraphWriter.hpp +0 -27
  299. package/vendor/include/networkit/io/KONECTGraphReader.hpp +0 -44
  300. package/vendor/include/networkit/io/LineFileReader.hpp +0 -42
  301. package/vendor/include/networkit/io/METISGraphReader.hpp +0 -36
  302. package/vendor/include/networkit/io/METISGraphWriter.hpp +0 -29
  303. package/vendor/include/networkit/io/METISParser.hpp +0 -63
  304. package/vendor/include/networkit/io/MTXGraphReader.hpp +0 -31
  305. package/vendor/include/networkit/io/MTXParser.hpp +0 -87
  306. package/vendor/include/networkit/io/MatrixMarketReader.hpp +0 -33
  307. package/vendor/include/networkit/io/MatrixReader.hpp +0 -33
  308. package/vendor/include/networkit/io/MemoryMappedFile.hpp +0 -80
  309. package/vendor/include/networkit/io/NetworkitBinaryGraph.hpp +0 -144
  310. package/vendor/include/networkit/io/NetworkitBinaryReader.hpp +0 -50
  311. package/vendor/include/networkit/io/NetworkitBinaryWriter.hpp +0 -71
  312. package/vendor/include/networkit/io/PartitionReader.hpp +0 -34
  313. package/vendor/include/networkit/io/PartitionWriter.hpp +0 -31
  314. package/vendor/include/networkit/io/RBGraphReader.hpp +0 -37
  315. package/vendor/include/networkit/io/RBMatrixReader.hpp +0 -49
  316. package/vendor/include/networkit/io/RasterReader.hpp +0 -40
  317. package/vendor/include/networkit/io/SNAPEdgeListPartitionReader.hpp +0 -28
  318. package/vendor/include/networkit/io/SNAPGraphReader.hpp +0 -53
  319. package/vendor/include/networkit/io/SNAPGraphWriter.hpp +0 -53
  320. package/vendor/include/networkit/io/ThrillGraphBinaryReader.hpp +0 -44
  321. package/vendor/include/networkit/io/ThrillGraphBinaryWriter.hpp +0 -27
  322. package/vendor/include/networkit/layout/LayoutAlgorithm.hpp +0 -39
  323. package/vendor/include/networkit/linkprediction/AdamicAdarIndex.hpp +0 -37
  324. package/vendor/include/networkit/linkprediction/AdjustedRandIndex.hpp +0 -36
  325. package/vendor/include/networkit/linkprediction/AlgebraicDistanceIndex.hpp +0 -70
  326. package/vendor/include/networkit/linkprediction/CommonNeighborsIndex.hpp +0 -39
  327. package/vendor/include/networkit/linkprediction/EvaluationMetric.hpp +0 -135
  328. package/vendor/include/networkit/linkprediction/JaccardIndex.hpp +0 -44
  329. package/vendor/include/networkit/linkprediction/KatzIndex.hpp +0 -84
  330. package/vendor/include/networkit/linkprediction/LinkPredictor.hpp +0 -98
  331. package/vendor/include/networkit/linkprediction/LinkThresholder.hpp +0 -56
  332. package/vendor/include/networkit/linkprediction/MissingLinksFinder.hpp +0 -60
  333. package/vendor/include/networkit/linkprediction/NeighborhoodDistanceIndex.hpp +0 -42
  334. package/vendor/include/networkit/linkprediction/NeighborhoodUtility.hpp +0 -54
  335. package/vendor/include/networkit/linkprediction/NeighborsMeasureIndex.hpp +0 -48
  336. package/vendor/include/networkit/linkprediction/PrecisionRecallMetric.hpp +0 -40
  337. package/vendor/include/networkit/linkprediction/PredictionsSorter.hpp +0 -66
  338. package/vendor/include/networkit/linkprediction/PreferentialAttachmentIndex.hpp +0 -37
  339. package/vendor/include/networkit/linkprediction/ROCMetric.hpp +0 -39
  340. package/vendor/include/networkit/linkprediction/RandomLinkSampler.hpp +0 -47
  341. package/vendor/include/networkit/linkprediction/ResourceAllocationIndex.hpp +0 -38
  342. package/vendor/include/networkit/linkprediction/SameCommunityIndex.hpp +0 -50
  343. package/vendor/include/networkit/linkprediction/TotalNeighborsIndex.hpp +0 -39
  344. package/vendor/include/networkit/linkprediction/UDegreeIndex.hpp +0 -35
  345. package/vendor/include/networkit/linkprediction/VDegreeIndex.hpp +0 -35
  346. package/vendor/include/networkit/matching/BMatcher.hpp +0 -52
  347. package/vendor/include/networkit/matching/BMatching.hpp +0 -115
  348. package/vendor/include/networkit/matching/BSuitorMatcher.hpp +0 -170
  349. package/vendor/include/networkit/matching/DynamicBSuitorMatcher.hpp +0 -78
  350. package/vendor/include/networkit/matching/LocalMaxMatcher.hpp +0 -35
  351. package/vendor/include/networkit/matching/Matcher.hpp +0 -55
  352. package/vendor/include/networkit/matching/Matching.hpp +0 -111
  353. package/vendor/include/networkit/matching/PathGrowingMatcher.hpp +0 -46
  354. package/vendor/include/networkit/matching/SuitorMatcher.hpp +0 -62
  355. package/vendor/include/networkit/numerics/ConjugateGradient.hpp +0 -163
  356. package/vendor/include/networkit/numerics/GaussSeidelRelaxation.hpp +0 -99
  357. package/vendor/include/networkit/numerics/LAMG/LAMGSettings.hpp +0 -70
  358. package/vendor/include/networkit/numerics/LAMG/Lamg.hpp +0 -460
  359. package/vendor/include/networkit/numerics/LAMG/Level/EliminationStage.hpp +0 -47
  360. package/vendor/include/networkit/numerics/LAMG/Level/Level.hpp +0 -56
  361. package/vendor/include/networkit/numerics/LAMG/Level/LevelAggregation.hpp +0 -52
  362. package/vendor/include/networkit/numerics/LAMG/Level/LevelElimination.hpp +0 -133
  363. package/vendor/include/networkit/numerics/LAMG/Level/LevelFinest.hpp +0 -28
  364. package/vendor/include/networkit/numerics/LAMG/LevelHierarchy.hpp +0 -165
  365. package/vendor/include/networkit/numerics/LAMG/MultiLevelSetup.hpp +0 -1090
  366. package/vendor/include/networkit/numerics/LAMG/SolverLamg.hpp +0 -316
  367. package/vendor/include/networkit/numerics/LinearSolver.hpp +0 -151
  368. package/vendor/include/networkit/numerics/Preconditioner/DiagonalPreconditioner.hpp +0 -61
  369. package/vendor/include/networkit/numerics/Preconditioner/IdentityPreconditioner.hpp +0 -36
  370. package/vendor/include/networkit/numerics/Smoother.hpp +0 -37
  371. package/vendor/include/networkit/overlap/HashingOverlapper.hpp +0 -28
  372. package/vendor/include/networkit/overlap/Overlapper.hpp +0 -27
  373. package/vendor/include/networkit/planarity/LeftRightPlanarityCheck.hpp +0 -113
  374. package/vendor/include/networkit/randomization/Curveball.hpp +0 -49
  375. package/vendor/include/networkit/randomization/CurveballGlobalTradeGenerator.hpp +0 -39
  376. package/vendor/include/networkit/randomization/CurveballUniformTradeGenerator.hpp +0 -39
  377. package/vendor/include/networkit/randomization/DegreePreservingShuffle.hpp +0 -82
  378. package/vendor/include/networkit/randomization/EdgeSwitching.hpp +0 -157
  379. package/vendor/include/networkit/randomization/GlobalCurveball.hpp +0 -69
  380. package/vendor/include/networkit/randomization/GlobalTradeSequence.hpp +0 -303
  381. package/vendor/include/networkit/reachability/AllSimplePaths.hpp +0 -122
  382. package/vendor/include/networkit/reachability/ReachableNodes.hpp +0 -83
  383. package/vendor/include/networkit/scd/ApproximatePageRank.hpp +0 -51
  384. package/vendor/include/networkit/scd/CliqueDetect.hpp +0 -55
  385. package/vendor/include/networkit/scd/CombinedSCD.hpp +0 -51
  386. package/vendor/include/networkit/scd/GCE.hpp +0 -42
  387. package/vendor/include/networkit/scd/LFMLocal.hpp +0 -54
  388. package/vendor/include/networkit/scd/LocalT.hpp +0 -40
  389. package/vendor/include/networkit/scd/LocalTightnessExpansion.hpp +0 -46
  390. package/vendor/include/networkit/scd/PageRankNibble.hpp +0 -55
  391. package/vendor/include/networkit/scd/RandomBFS.hpp +0 -33
  392. package/vendor/include/networkit/scd/SCDGroundTruthComparison.hpp +0 -121
  393. package/vendor/include/networkit/scd/SelectiveCommunityDetector.hpp +0 -76
  394. package/vendor/include/networkit/scd/SetConductance.hpp +0 -47
  395. package/vendor/include/networkit/scd/TCE.hpp +0 -41
  396. package/vendor/include/networkit/scd/TwoPhaseL.hpp +0 -40
  397. package/vendor/include/networkit/scoring/EdgeScoring.hpp +0 -44
  398. package/vendor/include/networkit/scoring/ModularityScoring.hpp +0 -79
  399. package/vendor/include/networkit/simulation/EpidemicSimulationSEIR.hpp +0 -59
  400. package/vendor/include/networkit/sparsification/ChanceCorrectedTriangleScore.hpp +0 -28
  401. package/vendor/include/networkit/sparsification/ForestFireScore.hpp +0 -34
  402. package/vendor/include/networkit/sparsification/GlobalThresholdFilter.hpp +0 -40
  403. package/vendor/include/networkit/sparsification/LocalDegreeScore.hpp +0 -30
  404. package/vendor/include/networkit/sparsification/LocalFilterScore.hpp +0 -124
  405. package/vendor/include/networkit/sparsification/LocalSimilarityScore.hpp +0 -63
  406. package/vendor/include/networkit/sparsification/MultiscaleScore.hpp +0 -38
  407. package/vendor/include/networkit/sparsification/RandomEdgeScore.hpp +0 -33
  408. package/vendor/include/networkit/sparsification/RandomNodeEdgeScore.hpp +0 -29
  409. package/vendor/include/networkit/sparsification/SCANStructuralSimilarityScore.hpp +0 -23
  410. package/vendor/include/networkit/sparsification/SimmelianOverlapScore.hpp +0 -35
  411. package/vendor/include/networkit/sparsification/SimmelianScore.hpp +0 -92
  412. package/vendor/include/networkit/sparsification/Sparsifiers.hpp +0 -166
  413. package/vendor/include/networkit/structures/Cover.hpp +0 -248
  414. package/vendor/include/networkit/structures/LocalCommunity.hpp +0 -363
  415. package/vendor/include/networkit/structures/Partition.hpp +0 -335
  416. package/vendor/include/networkit/structures/UnionFind.hpp +0 -66
  417. package/vendor/include/networkit/viz/GraphLayoutAlgorithm.hpp +0 -157
  418. package/vendor/include/networkit/viz/MaxentStress.hpp +0 -346
  419. package/vendor/include/networkit/viz/Octree.hpp +0 -428
  420. package/vendor/include/networkit/viz/PivotMDS.hpp +0 -63
  421. package/vendor/include/networkit/viz/Point.hpp +0 -415
  422. package/vendor/include/networkit/viz/PostscriptWriter.hpp +0 -78
  423. package/vendor/include/tlx/algorithm/exclusive_scan.hpp +0 -56
  424. package/vendor/include/tlx/algorithm/is_sorted_cmp.hpp +0 -56
  425. package/vendor/include/tlx/algorithm/merge_advance.hpp +0 -177
  426. package/vendor/include/tlx/algorithm/merge_combine.hpp +0 -76
  427. package/vendor/include/tlx/algorithm/multisequence_partition.hpp +0 -346
  428. package/vendor/include/tlx/algorithm/multisequence_selection.hpp +0 -351
  429. package/vendor/include/tlx/algorithm/multiway_merge.hpp +0 -1385
  430. package/vendor/include/tlx/algorithm/multiway_merge_splitting.hpp +0 -257
  431. package/vendor/include/tlx/algorithm/parallel_multiway_merge.hpp +0 -408
  432. package/vendor/include/tlx/algorithm/random_bipartition_shuffle.hpp +0 -116
  433. package/vendor/include/tlx/algorithm.hpp +0 -36
  434. package/vendor/include/tlx/allocator_base.hpp +0 -100
  435. package/vendor/include/tlx/backtrace.hpp +0 -54
  436. package/vendor/include/tlx/cmdline_parser.hpp +0 -498
  437. package/vendor/include/tlx/container/btree.hpp +0 -3977
  438. package/vendor/include/tlx/container/btree_map.hpp +0 -634
  439. package/vendor/include/tlx/container/btree_multimap.hpp +0 -627
  440. package/vendor/include/tlx/container/btree_multiset.hpp +0 -612
  441. package/vendor/include/tlx/container/btree_set.hpp +0 -612
  442. package/vendor/include/tlx/container/d_ary_addressable_int_heap.hpp +0 -416
  443. package/vendor/include/tlx/container/d_ary_heap.hpp +0 -311
  444. package/vendor/include/tlx/container/loser_tree.hpp +0 -1009
  445. package/vendor/include/tlx/container/lru_cache.hpp +0 -319
  446. package/vendor/include/tlx/container/radix_heap.hpp +0 -735
  447. package/vendor/include/tlx/container/ring_buffer.hpp +0 -428
  448. package/vendor/include/tlx/container/simple_vector.hpp +0 -304
  449. package/vendor/include/tlx/container/splay_tree.hpp +0 -399
  450. package/vendor/include/tlx/container/string_view.hpp +0 -805
  451. package/vendor/include/tlx/container.hpp +0 -40
  452. package/vendor/include/tlx/counting_ptr.hpp +0 -522
  453. package/vendor/include/tlx/define/attribute_always_inline.hpp +0 -34
  454. package/vendor/include/tlx/define/attribute_fallthrough.hpp +0 -36
  455. package/vendor/include/tlx/define/attribute_format_printf.hpp +0 -34
  456. package/vendor/include/tlx/define/attribute_packed.hpp +0 -34
  457. package/vendor/include/tlx/define/attribute_warn_unused_result.hpp +0 -34
  458. package/vendor/include/tlx/define/constexpr.hpp +0 -31
  459. package/vendor/include/tlx/define/deprecated.hpp +0 -39
  460. package/vendor/include/tlx/define/endian.hpp +0 -49
  461. package/vendor/include/tlx/define/likely.hpp +0 -33
  462. package/vendor/include/tlx/define/visibility_hidden.hpp +0 -34
  463. package/vendor/include/tlx/define.hpp +0 -36
  464. package/vendor/include/tlx/delegate.hpp +0 -524
  465. package/vendor/include/tlx/die/core.hpp +0 -311
  466. package/vendor/include/tlx/die.hpp +0 -106
  467. package/vendor/include/tlx/digest/md5.hpp +0 -81
  468. package/vendor/include/tlx/digest/sha1.hpp +0 -81
  469. package/vendor/include/tlx/digest/sha256.hpp +0 -81
  470. package/vendor/include/tlx/digest/sha512.hpp +0 -81
  471. package/vendor/include/tlx/digest.hpp +0 -30
  472. package/vendor/include/tlx/logger/all.hpp +0 -33
  473. package/vendor/include/tlx/logger/array.hpp +0 -43
  474. package/vendor/include/tlx/logger/core.hpp +0 -287
  475. package/vendor/include/tlx/logger/deque.hpp +0 -42
  476. package/vendor/include/tlx/logger/map.hpp +0 -65
  477. package/vendor/include/tlx/logger/set.hpp +0 -60
  478. package/vendor/include/tlx/logger/tuple.hpp +0 -66
  479. package/vendor/include/tlx/logger/unordered_map.hpp +0 -68
  480. package/vendor/include/tlx/logger/unordered_set.hpp +0 -64
  481. package/vendor/include/tlx/logger/wrap_unprintable.hpp +0 -75
  482. package/vendor/include/tlx/logger.hpp +0 -44
  483. package/vendor/include/tlx/math/abs_diff.hpp +0 -35
  484. package/vendor/include/tlx/math/aggregate.hpp +0 -231
  485. package/vendor/include/tlx/math/aggregate_min_max.hpp +0 -116
  486. package/vendor/include/tlx/math/bswap.hpp +0 -148
  487. package/vendor/include/tlx/math/bswap_be.hpp +0 -79
  488. package/vendor/include/tlx/math/bswap_le.hpp +0 -79
  489. package/vendor/include/tlx/math/clz.hpp +0 -174
  490. package/vendor/include/tlx/math/ctz.hpp +0 -174
  491. package/vendor/include/tlx/math/div_ceil.hpp +0 -36
  492. package/vendor/include/tlx/math/ffs.hpp +0 -123
  493. package/vendor/include/tlx/math/integer_log2.hpp +0 -189
  494. package/vendor/include/tlx/math/is_power_of_two.hpp +0 -74
  495. package/vendor/include/tlx/math/polynomial_regression.hpp +0 -243
  496. package/vendor/include/tlx/math/popcount.hpp +0 -173
  497. package/vendor/include/tlx/math/power_to_the.hpp +0 -44
  498. package/vendor/include/tlx/math/rol.hpp +0 -112
  499. package/vendor/include/tlx/math/ror.hpp +0 -112
  500. package/vendor/include/tlx/math/round_to_power_of_two.hpp +0 -121
  501. package/vendor/include/tlx/math/round_up.hpp +0 -36
  502. package/vendor/include/tlx/math/sgn.hpp +0 -38
  503. package/vendor/include/tlx/math.hpp +0 -46
  504. package/vendor/include/tlx/meta/apply_tuple.hpp +0 -55
  505. package/vendor/include/tlx/meta/call_for_range.hpp +0 -78
  506. package/vendor/include/tlx/meta/call_foreach.hpp +0 -60
  507. package/vendor/include/tlx/meta/call_foreach_tuple.hpp +0 -60
  508. package/vendor/include/tlx/meta/call_foreach_tuple_with_index.hpp +0 -61
  509. package/vendor/include/tlx/meta/call_foreach_with_index.hpp +0 -64
  510. package/vendor/include/tlx/meta/enable_if.hpp +0 -37
  511. package/vendor/include/tlx/meta/fold_left.hpp +0 -63
  512. package/vendor/include/tlx/meta/fold_left_tuple.hpp +0 -60
  513. package/vendor/include/tlx/meta/fold_right.hpp +0 -63
  514. package/vendor/include/tlx/meta/fold_right_tuple.hpp +0 -60
  515. package/vendor/include/tlx/meta/function_chain.hpp +0 -197
  516. package/vendor/include/tlx/meta/function_stack.hpp +0 -189
  517. package/vendor/include/tlx/meta/has_member.hpp +0 -80
  518. package/vendor/include/tlx/meta/has_method.hpp +0 -117
  519. package/vendor/include/tlx/meta/index_sequence.hpp +0 -66
  520. package/vendor/include/tlx/meta/is_std_array.hpp +0 -40
  521. package/vendor/include/tlx/meta/is_std_pair.hpp +0 -39
  522. package/vendor/include/tlx/meta/is_std_tuple.hpp +0 -39
  523. package/vendor/include/tlx/meta/is_std_vector.hpp +0 -39
  524. package/vendor/include/tlx/meta/log2.hpp +0 -101
  525. package/vendor/include/tlx/meta/no_operation.hpp +0 -55
  526. package/vendor/include/tlx/meta/static_index.hpp +0 -42
  527. package/vendor/include/tlx/meta/vexpand.hpp +0 -34
  528. package/vendor/include/tlx/meta/vmap_for_range.hpp +0 -84
  529. package/vendor/include/tlx/meta/vmap_foreach.hpp +0 -63
  530. package/vendor/include/tlx/meta/vmap_foreach_tuple.hpp +0 -59
  531. package/vendor/include/tlx/meta/vmap_foreach_tuple_with_index.hpp +0 -62
  532. package/vendor/include/tlx/meta/vmap_foreach_with_index.hpp +0 -70
  533. package/vendor/include/tlx/meta.hpp +0 -55
  534. package/vendor/include/tlx/multi_timer.hpp +0 -148
  535. package/vendor/include/tlx/port/setenv.hpp +0 -31
  536. package/vendor/include/tlx/port.hpp +0 -27
  537. package/vendor/include/tlx/semaphore.hpp +0 -119
  538. package/vendor/include/tlx/simple_vector.hpp +0 -20
  539. package/vendor/include/tlx/siphash.hpp +0 -282
  540. package/vendor/include/tlx/sort/networks/best.hpp +0 -611
  541. package/vendor/include/tlx/sort/networks/bose_nelson.hpp +0 -412
  542. package/vendor/include/tlx/sort/networks/bose_nelson_parameter.hpp +0 -507
  543. package/vendor/include/tlx/sort/networks/cswap.hpp +0 -60
  544. package/vendor/include/tlx/sort/parallel_mergesort.hpp +0 -398
  545. package/vendor/include/tlx/sort/strings/insertion_sort.hpp +0 -232
  546. package/vendor/include/tlx/sort/strings/multikey_quicksort.hpp +0 -185
  547. package/vendor/include/tlx/sort/strings/parallel_sample_sort.hpp +0 -1647
  548. package/vendor/include/tlx/sort/strings/radix_sort.hpp +0 -934
  549. package/vendor/include/tlx/sort/strings/sample_sort_tools.hpp +0 -756
  550. package/vendor/include/tlx/sort/strings/string_ptr.hpp +0 -426
  551. package/vendor/include/tlx/sort/strings/string_set.hpp +0 -800
  552. package/vendor/include/tlx/sort/strings.hpp +0 -329
  553. package/vendor/include/tlx/sort/strings_parallel.hpp +0 -325
  554. package/vendor/include/tlx/sort.hpp +0 -29
  555. package/vendor/include/tlx/stack_allocator.hpp +0 -226
  556. package/vendor/include/tlx/string/appendline.hpp +0 -35
  557. package/vendor/include/tlx/string/base64.hpp +0 -87
  558. package/vendor/include/tlx/string/bitdump.hpp +0 -139
  559. package/vendor/include/tlx/string/compare_icase.hpp +0 -42
  560. package/vendor/include/tlx/string/contains.hpp +0 -36
  561. package/vendor/include/tlx/string/contains_word.hpp +0 -42
  562. package/vendor/include/tlx/string/ends_with.hpp +0 -79
  563. package/vendor/include/tlx/string/equal_icase.hpp +0 -42
  564. package/vendor/include/tlx/string/erase_all.hpp +0 -70
  565. package/vendor/include/tlx/string/escape_html.hpp +0 -34
  566. package/vendor/include/tlx/string/escape_uri.hpp +0 -34
  567. package/vendor/include/tlx/string/expand_environment_variables.hpp +0 -49
  568. package/vendor/include/tlx/string/extract_between.hpp +0 -40
  569. package/vendor/include/tlx/string/format_iec_units.hpp +0 -32
  570. package/vendor/include/tlx/string/format_si_iec_units.hpp +0 -19
  571. package/vendor/include/tlx/string/format_si_units.hpp +0 -32
  572. package/vendor/include/tlx/string/hash_djb2.hpp +0 -87
  573. package/vendor/include/tlx/string/hash_sdbm.hpp +0 -86
  574. package/vendor/include/tlx/string/hexdump.hpp +0 -154
  575. package/vendor/include/tlx/string/index_of.hpp +0 -56
  576. package/vendor/include/tlx/string/join.hpp +0 -65
  577. package/vendor/include/tlx/string/join_generic.hpp +0 -89
  578. package/vendor/include/tlx/string/join_quoted.hpp +0 -46
  579. package/vendor/include/tlx/string/less_icase.hpp +0 -64
  580. package/vendor/include/tlx/string/levenshtein.hpp +0 -193
  581. package/vendor/include/tlx/string/pad.hpp +0 -39
  582. package/vendor/include/tlx/string/parse_si_iec_units.hpp +0 -46
  583. package/vendor/include/tlx/string/parse_uri.hpp +0 -66
  584. package/vendor/include/tlx/string/parse_uri_form_data.hpp +0 -136
  585. package/vendor/include/tlx/string/replace.hpp +0 -141
  586. package/vendor/include/tlx/string/split.hpp +0 -170
  587. package/vendor/include/tlx/string/split_quoted.hpp +0 -49
  588. package/vendor/include/tlx/string/split_view.hpp +0 -218
  589. package/vendor/include/tlx/string/split_words.hpp +0 -53
  590. package/vendor/include/tlx/string/ssprintf.hpp +0 -45
  591. package/vendor/include/tlx/string/ssprintf_generic.hpp +0 -95
  592. package/vendor/include/tlx/string/starts_with.hpp +0 -44
  593. package/vendor/include/tlx/string/to_lower.hpp +0 -47
  594. package/vendor/include/tlx/string/to_upper.hpp +0 -47
  595. package/vendor/include/tlx/string/trim.hpp +0 -298
  596. package/vendor/include/tlx/string/union_words.hpp +0 -33
  597. package/vendor/include/tlx/string/word_wrap.hpp +0 -35
  598. package/vendor/include/tlx/string.hpp +0 -68
  599. package/vendor/include/tlx/thread_barrier_mutex.hpp +0 -109
  600. package/vendor/include/tlx/thread_barrier_spin.hpp +0 -127
  601. package/vendor/include/tlx/thread_pool.hpp +0 -151
  602. package/vendor/include/tlx/timestamp.hpp +0 -23
  603. package/vendor/include/tlx/unused.hpp +0 -28
  604. package/vendor/include/tlx/vector_free.hpp +0 -30
  605. package/vendor/include/tlx/version.hpp +0 -49
  606. package/vendor/include/ttmath/ttmath.h +0 -2881
  607. package/vendor/include/ttmath/ttmathbig.h +0 -6111
  608. package/vendor/include/ttmath/ttmathdec.h +0 -419
  609. package/vendor/include/ttmath/ttmathint.h +0 -1923
  610. package/vendor/include/ttmath/ttmathmisc.h +0 -250
  611. package/vendor/include/ttmath/ttmathobjects.h +0 -812
  612. package/vendor/include/ttmath/ttmathparser.h +0 -2791
  613. package/vendor/include/ttmath/ttmaththreads.h +0 -252
  614. package/vendor/include/ttmath/ttmathtypes.h +0 -707
  615. package/vendor/include/ttmath/ttmathuint.h +0 -4190
  616. package/vendor/include/ttmath/ttmathuint_noasm.h +0 -1038
  617. package/vendor/include/ttmath/ttmathuint_x86.h +0 -1620
  618. package/vendor/include/ttmath/ttmathuint_x86_64.h +0 -1177
  619. package/vendor/lib/cmake/tlx/tlx-config.cmake +0 -51
  620. package/vendor/lib/cmake/tlx/tlx-targets-release.cmake +0 -19
  621. package/vendor/lib/cmake/tlx/tlx-targets.cmake +0 -106
  622. package/vendor/lib/cmake/tlx/tlx-version.cmake +0 -11
  623. package/vendor/lib/libtlx.a +0 -0
  624. package/vendor/lib/pkgconfig/networkit.pc +0 -11
  625. package/vendor/lib/pkgconfig/tlx.pc +0 -11
@@ -1,55 +0,0 @@
1
- /*******************************************************************************
2
- * tlx/meta.hpp
3
- *
4
- * Part of tlx - http://panthema.net/tlx
5
- *
6
- * Copyright (C) 2017 Timo Bingmann <tb@panthema.net>
7
- *
8
- * All rights reserved. Published under the Boost Software License, Version 1.0
9
- ******************************************************************************/
10
-
11
- #ifndef TLX_META_HEADER
12
- #define TLX_META_HEADER
13
-
14
- //! \defgroup tlx_meta Meta-Template Programming
15
- //! Tools for easier meta-template programming
16
-
17
- /*[[[perl
18
- foreach (sort glob("tlx/meta/"."*.hpp")) {
19
- print "#include <$_> // NOLINT(misc-include-cleaner)\n"
20
- }
21
- ]]]*/
22
- #include <tlx/meta/apply_tuple.hpp> // NOLINT(misc-include-cleaner)
23
- #include <tlx/meta/call_for_range.hpp> // NOLINT(misc-include-cleaner)
24
- #include <tlx/meta/call_foreach.hpp> // NOLINT(misc-include-cleaner)
25
- #include <tlx/meta/call_foreach_tuple.hpp> // NOLINT(misc-include-cleaner)
26
- #include <tlx/meta/call_foreach_tuple_with_index.hpp> // NOLINT(misc-include-cleaner)
27
- #include <tlx/meta/call_foreach_with_index.hpp> // NOLINT(misc-include-cleaner)
28
- #include <tlx/meta/enable_if.hpp> // NOLINT(misc-include-cleaner)
29
- #include <tlx/meta/fold_left.hpp> // NOLINT(misc-include-cleaner)
30
- #include <tlx/meta/fold_left_tuple.hpp> // NOLINT(misc-include-cleaner)
31
- #include <tlx/meta/fold_right.hpp> // NOLINT(misc-include-cleaner)
32
- #include <tlx/meta/fold_right_tuple.hpp> // NOLINT(misc-include-cleaner)
33
- #include <tlx/meta/function_chain.hpp> // NOLINT(misc-include-cleaner)
34
- #include <tlx/meta/function_stack.hpp> // NOLINT(misc-include-cleaner)
35
- #include <tlx/meta/has_member.hpp> // NOLINT(misc-include-cleaner)
36
- #include <tlx/meta/has_method.hpp> // NOLINT(misc-include-cleaner)
37
- #include <tlx/meta/index_sequence.hpp> // NOLINT(misc-include-cleaner)
38
- #include <tlx/meta/is_std_array.hpp> // NOLINT(misc-include-cleaner)
39
- #include <tlx/meta/is_std_pair.hpp> // NOLINT(misc-include-cleaner)
40
- #include <tlx/meta/is_std_tuple.hpp> // NOLINT(misc-include-cleaner)
41
- #include <tlx/meta/is_std_vector.hpp> // NOLINT(misc-include-cleaner)
42
- #include <tlx/meta/log2.hpp> // NOLINT(misc-include-cleaner)
43
- #include <tlx/meta/no_operation.hpp> // NOLINT(misc-include-cleaner)
44
- #include <tlx/meta/static_index.hpp> // NOLINT(misc-include-cleaner)
45
- #include <tlx/meta/vexpand.hpp> // NOLINT(misc-include-cleaner)
46
- #include <tlx/meta/vmap_for_range.hpp> // NOLINT(misc-include-cleaner)
47
- #include <tlx/meta/vmap_foreach.hpp> // NOLINT(misc-include-cleaner)
48
- #include <tlx/meta/vmap_foreach_tuple.hpp> // NOLINT(misc-include-cleaner)
49
- #include <tlx/meta/vmap_foreach_tuple_with_index.hpp> // NOLINT(misc-include-cleaner)
50
- #include <tlx/meta/vmap_foreach_with_index.hpp> // NOLINT(misc-include-cleaner)
51
- // [[[end]]]
52
-
53
- #endif // !TLX_META_HEADER
54
-
55
- /******************************************************************************/
@@ -1,148 +0,0 @@
1
- /*******************************************************************************
2
- * tlx/multi_timer.hpp
3
- *
4
- * Part of tlx - http://panthema.net/tlx
5
- *
6
- * Copyright (C) 2018-2019 Timo Bingmann <tb@panthema.net>
7
- *
8
- * All rights reserved. Published under the Boost Software License, Version 1.0
9
- ******************************************************************************/
10
-
11
- #ifndef TLX_MULTI_TIMER_HEADER
12
- #define TLX_MULTI_TIMER_HEADER
13
-
14
- #include <chrono>
15
- #include <cstdint>
16
- #include <ostream>
17
- #include <vector>
18
-
19
- namespace tlx {
20
-
21
- /*!
22
- * MultiTimer can be used to measure time usage of different phases in a program
23
- * or algorithm. It contains multiple named "timers", which can be activated
24
- * without prior definition. At most one timer is start at any time, which
25
- * means `start()` will stop any current timer and start a new one.
26
- *
27
- * Timers are identified by strings, which are passed as const char*, which MUST
28
- * remain valid for the lifetime of the MultiTimer. Dynamic strings will not
29
- * work, the standard way is to use plain string literals. The strings are hash
30
- * for faster searches.
31
- *
32
- * MultiTimer can also be used for multi-threading parallel programs. Each
33
- * thread must create and keep its own MultiTimer instance, which can then be
34
- * added together into a global MultiTimer object. The add() method of the
35
- * global object is internally thread-safe using a global mutex.
36
- */
37
- class MultiTimer
38
- {
39
- public:
40
- //! constructor
41
- MultiTimer();
42
-
43
- //! default copy-constructor
44
- MultiTimer(const MultiTimer&);
45
- //! default assignment operator
46
- MultiTimer& operator=(const MultiTimer&);
47
- //! move-constructor: default
48
- MultiTimer(MultiTimer&&) noexcept;
49
- //! move-assignment operator: default
50
- MultiTimer& operator=(MultiTimer&&) noexcept;
51
-
52
- //! destructor
53
- ~MultiTimer();
54
-
55
- //! start new timer phase, stop the currently running one.
56
- void start(const char* timer);
57
-
58
- //! stop the currently running timer.
59
- void stop();
60
-
61
- //! zero timers.
62
- void reset();
63
-
64
- //! return name of currently running timer.
65
- const char* running() const;
66
-
67
- //! return timer duration in seconds of timer.
68
- double get(const char* timer);
69
- //! return total duration of all timers.
70
- double total() const;
71
-
72
- //! print all timers as a TIMER line to os
73
- void print(const char* info, std::ostream& os) const;
74
- //! print all timers as a TIMER line to stderr
75
- void print(const char* info) const;
76
-
77
- //! add all timers from another, internally holds a global mutex lock,
78
- //! because this is used to add thread values
79
- MultiTimer& add(const MultiTimer& b);
80
-
81
- //! add all timers from another, internally holds a global mutex lock,
82
- //! because this is used to add thread values
83
- MultiTimer& operator+=(const MultiTimer& b);
84
-
85
- private:
86
- //! timer entry
87
- struct Entry;
88
-
89
- //! array of timers
90
- std::vector<Entry> timers_;
91
-
92
- //! total duration
93
- std::chrono::duration<double> total_duration_;
94
-
95
- //! currently running timer name
96
- const char* running_ = nullptr;
97
- //! hash of running_
98
- std::uint32_t running_hash_ = 0;
99
- //! start of currently running timer name
100
- std::chrono::time_point<std::chrono::high_resolution_clock> time_point_;
101
-
102
- //! internal methods to find or create new timer entries
103
- Entry& find_or_create(const char* name);
104
- };
105
-
106
- //! RAII Scoped MultiTimer switcher: switches the timer of a MultiTimer on
107
- //! construction and back to old one on destruction.
108
- class ScopedMultiTimerSwitch
109
- {
110
- public:
111
- //! construct and timer to switch to
112
- ScopedMultiTimerSwitch(MultiTimer& timer, const char* new_timer);
113
-
114
- //! change back timer to previous timer.
115
- ~ScopedMultiTimerSwitch();
116
-
117
- private:
118
- //! reference to MultiTimer
119
- MultiTimer& timer_;
120
-
121
- //! previous timer, used to switch back to on destruction
122
- const char* previous_;
123
- };
124
-
125
- //! Independent RAII Scoped MultiTimer: contains a MultiTimer which is started
126
- //! with the given timer, and added to the base MultiTimer on destruction.
127
- class ScopedMultiTimer
128
- {
129
- public:
130
- //! construct and change timer to tm
131
- ScopedMultiTimer(MultiTimer& base, const char* timer);
132
-
133
- //! change back timer to previous timer.
134
- ~ScopedMultiTimer();
135
-
136
- private:
137
- //! reference to base timer
138
- MultiTimer& base_;
139
-
140
- //! contained independent timer
141
- MultiTimer timer_;
142
- };
143
-
144
- } // namespace tlx
145
-
146
- #endif // !TLX_MULTI_TIMER_HEADER
147
-
148
- /******************************************************************************/
@@ -1,31 +0,0 @@
1
- /*******************************************************************************
2
- * tlx/port/setenv.hpp
3
- *
4
- * Part of tlx - http://panthema.net/tlx
5
- *
6
- * Copyright (C) 2016-2018 Timo Bingmann <tb@panthema.net>
7
- *
8
- * All rights reserved. Published under the Boost Software License, Version 1.0
9
- ******************************************************************************/
10
-
11
- #ifndef TLX_PORT_SETENV_HEADER
12
- #define TLX_PORT_SETENV_HEADER
13
-
14
- namespace tlx {
15
-
16
- //! \addtogroup tlx_port
17
- //! \{
18
-
19
- /*!
20
- * setenv - change or add an environment variable.
21
- * Windows porting madness because setenv() is apparently dangerous.
22
- */
23
- int setenv(const char* name, const char* value, int overwrite);
24
-
25
- //! \}
26
-
27
- } // namespace tlx
28
-
29
- #endif // !TLX_PORT_SETENV_HEADER
30
-
31
- /******************************************************************************/
@@ -1,27 +0,0 @@
1
- /*******************************************************************************
2
- * tlx/port.hpp
3
- *
4
- * Part of tlx - http://panthema.net/tlx
5
- *
6
- * Copyright (C) 2017 Timo Bingmann <tb@panthema.net>
7
- *
8
- * All rights reserved. Published under the Boost Software License, Version 1.0
9
- ******************************************************************************/
10
-
11
- #ifndef TLX_PORT_HEADER
12
- #define TLX_PORT_HEADER
13
-
14
- //! \defgroup tlx_port Helpers for Portable Code
15
- //! Tools to enable easier writing of portable code.
16
-
17
- /*[[[perl
18
- foreach (sort glob("tlx/port/"."*.hpp")) {
19
- print "#include <$_> // NOLINT(misc-include-cleaner)\n";
20
- }
21
- ]]]*/
22
- #include <tlx/port/setenv.hpp> // NOLINT(misc-include-cleaner)
23
- // [[[end]]]
24
-
25
- #endif // !TLX_PORT_HEADER
26
-
27
- /******************************************************************************/
@@ -1,119 +0,0 @@
1
- /*******************************************************************************
2
- * tlx/semaphore.hpp
3
- *
4
- * A simple semaphore implementation using C++11 synchronization methods.
5
- *
6
- * Copied and modified from STXXL https://github.com/stxxl/stxxl, which is
7
- * distributed under the Boost Software License, Version 1.0.
8
- *
9
- * Part of tlx - http://panthema.net/tlx
10
- *
11
- * Copyright (C) 2002 Roman Dementiev <dementiev@mpi-sb.mpg.de>
12
- * Copyright (C) 2013-2018 Timo Bingmann <tb@panthema.net>
13
- *
14
- * All rights reserved. Published under the Boost Software License, Version 1.0
15
- ******************************************************************************/
16
-
17
- #ifndef TLX_SEMAPHORE_HEADER
18
- #define TLX_SEMAPHORE_HEADER
19
-
20
- #include <condition_variable>
21
- #include <cstddef>
22
- #include <mutex>
23
-
24
- namespace tlx {
25
-
26
- //! A simple semaphore implementation using C++11 synchronization methods.
27
- class Semaphore
28
- {
29
- public:
30
- //! construct semaphore
31
- explicit Semaphore(size_t initial_value = 0) : value_(initial_value)
32
- {
33
- }
34
-
35
- //! non-copyable: delete copy-constructor
36
- Semaphore(const Semaphore&) = delete;
37
- //! non-copyable: delete assignment operator
38
- Semaphore& operator=(const Semaphore&) = delete;
39
-
40
- //! move-constructor: just move the value
41
- Semaphore(Semaphore&& s) noexcept : value_(s.value_)
42
- {
43
- }
44
-
45
- //! move-assignment: just move the value
46
- Semaphore& operator=(Semaphore&& s) noexcept
47
- {
48
- value_ = s.value_;
49
- return *this;
50
- }
51
-
52
- //! function increments the semaphore and signals any threads that are
53
- //! blocked waiting a change in the semaphore
54
- size_t signal()
55
- {
56
- std::unique_lock<std::mutex> lock(mutex_);
57
- size_t res = ++value_;
58
- cv_.notify_one();
59
- return res;
60
- }
61
-
62
- //! function increments the semaphore and signals any threads that are
63
- //! blocked waiting a change in the semaphore
64
- size_t signal(size_t delta)
65
- {
66
- std::unique_lock<std::mutex> lock(mutex_);
67
- size_t res = (value_ += delta);
68
- cv_.notify_all();
69
- return res;
70
- }
71
-
72
- //! function decrements the semaphore by delta and blocks if the semaphore
73
- //! is < (delta + slack) until another thread signals a change
74
- size_t wait(size_t delta = 1, size_t slack = 0)
75
- {
76
- std::unique_lock<std::mutex> lock(mutex_);
77
- while (value_ < delta + slack)
78
- cv_.wait(lock);
79
- value_ -= delta;
80
- return value_;
81
- }
82
-
83
- //! function decrements the semaphore by delta if (delta + slack) tokens are
84
- //! available as a batch. the function will not block and returns true if
85
- //! delta was acquired otherwise false.
86
- bool try_acquire(size_t delta = 1, size_t slack = 0)
87
- {
88
- std::unique_lock<std::mutex> lock(mutex_);
89
- if (value_ < delta + slack)
90
- return false;
91
- value_ -= delta;
92
- return true;
93
- }
94
-
95
- //! return the current value -- should only be used for debugging.
96
- size_t value() const
97
- {
98
- return value_;
99
- }
100
-
101
- private:
102
- //! value of the semaphore
103
- size_t value_;
104
-
105
- //! mutex for condition variable
106
- std::mutex mutex_;
107
-
108
- //! condition variable
109
- std::condition_variable cv_;
110
- };
111
-
112
- //! alias for STL-like code style
113
- using semaphore = Semaphore;
114
-
115
- } // namespace tlx
116
-
117
- #endif // !TLX_SEMAPHORE_HEADER
118
-
119
- /******************************************************************************/
@@ -1,20 +0,0 @@
1
- /*******************************************************************************
2
- * tlx/simple_vector.hpp
3
- *
4
- * Alias for <tlx/container/simple_vector.hpp>
5
- *
6
- * Part of tlx - http://panthema.net/tlx
7
- *
8
- * Copyright (C) 2018 Timo Bingmann <tb@panthema.net>
9
- *
10
- * All rights reserved. Published under the Boost Software License, Version 1.0
11
- ******************************************************************************/
12
-
13
- #ifndef TLX_SIMPLE_VECTOR_HEADER
14
- #define TLX_SIMPLE_VECTOR_HEADER
15
-
16
- #include <tlx/container/simple_vector.hpp> // NOLINT(misc-include-cleaner)
17
-
18
- #endif // !TLX_SIMPLE_VECTOR_HEADER
19
-
20
- /******************************************************************************/
@@ -1,282 +0,0 @@
1
- /*******************************************************************************
2
- * tlx/siphash.hpp
3
- *
4
- * SipHash Implementations borrowed under Public Domain license from
5
- * https://github.com/floodyberry/siphash
6
- *
7
- * Part of tlx - http://panthema.net/tlx
8
- *
9
- * Copyright (C) 2017-2024 Timo Bingmann <tb@panthema.net>
10
- *
11
- * All rights reserved. Published under the Boost Software License, Version 1.0
12
- ******************************************************************************/
13
-
14
- #ifndef TLX_SIPHASH_HEADER
15
- #define TLX_SIPHASH_HEADER
16
-
17
- #include <tlx/container/string_view.hpp>
18
- #include <tlx/define/attribute_fallthrough.hpp>
19
- #include <tlx/math/bswap_le.hpp>
20
- #include <tlx/math/rol.hpp>
21
- #include <cstdint>
22
- #include <cstdlib>
23
-
24
- #if defined(_MSC_VER)
25
-
26
- #include <intrin.h>
27
-
28
- #if (_MSC_VER > 1200) || defined(_mm_free)
29
- #define __SSE2__
30
- #endif
31
-
32
- #endif // !defined(_MSC_VER)
33
-
34
- #if defined(__SSE2__)
35
- #include <emmintrin.h>
36
- #include <xmmintrin.h>
37
- #endif
38
-
39
- namespace tlx {
40
-
41
- static inline std::uint64_t siphash_plain(const std::uint8_t key[16],
42
- const std::uint8_t* m, size_t len)
43
- {
44
- std::uint64_t v0, v1, v2, v3;
45
- std::uint64_t mi, k0, k1;
46
- std::uint64_t last7;
47
- size_t i, blocks;
48
-
49
- k0 = bswap64_le(*reinterpret_cast<const std::uint64_t*>(key + 0));
50
- k1 = bswap64_le(*reinterpret_cast<const std::uint64_t*>(key + 8));
51
- v0 = k0 ^ 0x736f6d6570736575ULL;
52
- v1 = k1 ^ 0x646f72616e646f6dULL;
53
- v2 = k0 ^ 0x6c7967656e657261ULL;
54
- v3 = k1 ^ 0x7465646279746573ULL;
55
-
56
- last7 = static_cast<std::uint64_t>(len & 0xff) << 56;
57
-
58
- #define TLX_SIPCOMPRESS() \
59
- v0 += v1; \
60
- v2 += v3; \
61
- v1 = rol64(v1, 13); \
62
- v3 = rol64(v3, 16); \
63
- v1 ^= v0; \
64
- v3 ^= v2; \
65
- v0 = rol64(v0, 32); \
66
- v2 += v1; \
67
- v0 += v3; \
68
- v1 = rol64(v1, 17); \
69
- v3 = rol64(v3, 21); \
70
- v1 ^= v2; \
71
- v3 ^= v0; \
72
- v2 = rol64(v2, 32);
73
-
74
- for (i = 0, blocks = (len & ~7); i < blocks; i += 8)
75
- {
76
- mi = bswap64_le(*reinterpret_cast<const std::uint64_t*>(m + i));
77
- v3 ^= mi;
78
- TLX_SIPCOMPRESS();
79
- TLX_SIPCOMPRESS();
80
- v0 ^= mi;
81
- }
82
-
83
- switch (len - blocks)
84
- {
85
- case 7:
86
- last7 |= static_cast<std::uint64_t>(m[i + 6]) << 48;
87
- TLX_ATTRIBUTE_FALLTHROUGH;
88
- case 6:
89
- last7 |= static_cast<std::uint64_t>(m[i + 5]) << 40;
90
- TLX_ATTRIBUTE_FALLTHROUGH;
91
- case 5:
92
- last7 |= static_cast<std::uint64_t>(m[i + 4]) << 32;
93
- TLX_ATTRIBUTE_FALLTHROUGH;
94
- case 4:
95
- last7 |= static_cast<std::uint64_t>(m[i + 3]) << 24;
96
- TLX_ATTRIBUTE_FALLTHROUGH;
97
- case 3:
98
- last7 |= static_cast<std::uint64_t>(m[i + 2]) << 16;
99
- TLX_ATTRIBUTE_FALLTHROUGH;
100
- case 2:
101
- last7 |= static_cast<std::uint64_t>(m[i + 1]) << 8;
102
- TLX_ATTRIBUTE_FALLTHROUGH;
103
- case 1:
104
- last7 |= static_cast<std::uint64_t>(m[i + 0]);
105
- TLX_ATTRIBUTE_FALLTHROUGH;
106
- case 0:
107
- default:;
108
- }
109
-
110
- v3 ^= last7;
111
- TLX_SIPCOMPRESS();
112
- TLX_SIPCOMPRESS();
113
- v0 ^= last7;
114
- v2 ^= 0xff;
115
- TLX_SIPCOMPRESS();
116
- TLX_SIPCOMPRESS();
117
- TLX_SIPCOMPRESS();
118
- TLX_SIPCOMPRESS();
119
-
120
- #undef TLX_SIPCOMPRESS
121
-
122
- return v0 ^ v1 ^ v2 ^ v3;
123
- }
124
-
125
- /******************************************************************************/
126
- // SSE2 vectorization
127
-
128
- #if defined(__SSE2__)
129
-
130
- union siphash_packedelem64
131
- {
132
- std::uint64_t u[2];
133
- __m128i v;
134
- };
135
-
136
- /* 0,2,1,3 */
137
- static const siphash_packedelem64 siphash_init[2] = {
138
- {{0x736f6d6570736575ULL, 0x6c7967656e657261ULL}},
139
- {{0x646f72616e646f6dULL, 0x7465646279746573ULL}}};
140
-
141
- static const siphash_packedelem64 siphash_final = {
142
- {0x0000000000000000ULL, 0x00000000000000ffULL}};
143
-
144
- static inline std::uint64_t siphash_sse2(const std::uint8_t key[16],
145
- const std::uint8_t* m, size_t len)
146
- {
147
- __m128i k, v02, v20, v13, v11, v33, mi;
148
- std::uint64_t last7;
149
- std::uint32_t lo, hi;
150
- size_t i, blocks;
151
-
152
- k = _mm_loadu_si128(reinterpret_cast<const __m128i*>(key + 0));
153
- v02 = siphash_init[0].v;
154
- v13 = siphash_init[1].v;
155
- v02 = _mm_xor_si128(v02, _mm_unpacklo_epi64(k, k));
156
- v13 = _mm_xor_si128(v13, _mm_unpackhi_epi64(k, k));
157
-
158
- last7 = static_cast<std::uint64_t>(len & 0xff) << 56;
159
-
160
- #define TLX_SIPCOMPRESS() \
161
- v11 = v13; \
162
- v33 = _mm_shuffle_epi32(v13, _MM_SHUFFLE(1, 0, 3, 2)); \
163
- v11 = _mm_or_si128(_mm_slli_epi64(v11, 13), _mm_srli_epi64(v11, 64 - 13)); \
164
- v02 = _mm_add_epi64(v02, v13); \
165
- v33 = _mm_shufflelo_epi16(v33, _MM_SHUFFLE(2, 1, 0, 3)); \
166
- v13 = _mm_unpacklo_epi64(v11, v33); \
167
- v13 = _mm_xor_si128(v13, v02); \
168
- v20 = _mm_shuffle_epi32(v02, _MM_SHUFFLE(0, 1, 3, 2)); \
169
- v11 = v13; \
170
- v33 = _mm_shuffle_epi32(v13, _MM_SHUFFLE(1, 0, 3, 2)); \
171
- v11 = _mm_or_si128(_mm_slli_epi64(v11, 17), _mm_srli_epi64(v11, 64 - 17)); \
172
- v20 = _mm_add_epi64(v20, v13); \
173
- v33 = _mm_or_si128(_mm_slli_epi64(v33, 21), _mm_srli_epi64(v33, 64 - 21)); \
174
- v13 = _mm_unpacklo_epi64(v11, v33); \
175
- v02 = _mm_shuffle_epi32(v20, _MM_SHUFFLE(0, 1, 3, 2)); \
176
- v13 = _mm_xor_si128(v13, v20);
177
-
178
- for (i = 0, blocks = (len & ~7); i < blocks; i += 8)
179
- {
180
- mi = _mm_loadl_epi64(reinterpret_cast<const __m128i*>(m + i));
181
- v13 = _mm_xor_si128(v13, _mm_slli_si128(mi, 8));
182
- TLX_SIPCOMPRESS();
183
- TLX_SIPCOMPRESS();
184
- v02 = _mm_xor_si128(v02, mi);
185
- }
186
-
187
- switch (len - blocks)
188
- {
189
- case 7:
190
- last7 |= static_cast<std::uint64_t>(m[i + 6]) << 48;
191
- TLX_ATTRIBUTE_FALLTHROUGH;
192
- case 6:
193
- last7 |= static_cast<std::uint64_t>(m[i + 5]) << 40;
194
- TLX_ATTRIBUTE_FALLTHROUGH;
195
- case 5:
196
- last7 |= static_cast<std::uint64_t>(m[i + 4]) << 32;
197
- TLX_ATTRIBUTE_FALLTHROUGH;
198
- case 4:
199
- last7 |= static_cast<std::uint64_t>(m[i + 3]) << 24;
200
- TLX_ATTRIBUTE_FALLTHROUGH;
201
- case 3:
202
- last7 |= static_cast<std::uint64_t>(m[i + 2]) << 16;
203
- TLX_ATTRIBUTE_FALLTHROUGH;
204
- case 2:
205
- last7 |= static_cast<std::uint64_t>(m[i + 1]) << 8;
206
- TLX_ATTRIBUTE_FALLTHROUGH;
207
- case 1:
208
- last7 |= static_cast<std::uint64_t>(m[i + 0]);
209
- TLX_ATTRIBUTE_FALLTHROUGH;
210
- case 0:
211
- default:;
212
- }
213
-
214
- mi = _mm_unpacklo_epi32(
215
- _mm_cvtsi32_si128(static_cast<std::uint32_t>(last7)),
216
- _mm_cvtsi32_si128(static_cast<std::uint32_t>(last7 >> 32)));
217
- v13 = _mm_xor_si128(v13, _mm_slli_si128(mi, 8));
218
- TLX_SIPCOMPRESS();
219
- TLX_SIPCOMPRESS();
220
- v02 = _mm_xor_si128(v02, mi);
221
- v02 = _mm_xor_si128(v02, siphash_final.v);
222
- TLX_SIPCOMPRESS();
223
- TLX_SIPCOMPRESS();
224
- TLX_SIPCOMPRESS();
225
- TLX_SIPCOMPRESS();
226
-
227
- v02 = _mm_xor_si128(v02, v13);
228
- v02 = _mm_xor_si128(v02, _mm_shuffle_epi32(v02, _MM_SHUFFLE(1, 0, 3, 2)));
229
- lo = _mm_cvtsi128_si32(v02);
230
- hi = _mm_cvtsi128_si32(_mm_srli_si128(v02, 4));
231
-
232
- #undef TLX_SIPCOMPRESS
233
-
234
- return (static_cast<std::uint64_t>(hi) << 32) | lo;
235
- }
236
-
237
- #endif // defined(__SSE2__)
238
-
239
- /******************************************************************************/
240
- // Switch between available implementations
241
-
242
- static inline std::uint64_t siphash(const std::uint8_t key[16],
243
- const std::uint8_t* msg, size_t size)
244
- {
245
- #if defined(__SSE2__)
246
- return siphash_sse2(key, msg, size);
247
- #else
248
- return siphash_plain(key, msg, size);
249
- #endif
250
- }
251
-
252
- static inline std::uint64_t siphash(const std::uint8_t* msg, size_t size)
253
- {
254
- const unsigned char key[16] = {0, 1, 2, 3, 4, 5, 6, 7,
255
- 8, 9, 10, 11, 12, 13, 14, 15};
256
- return siphash(key, msg, size);
257
- }
258
-
259
- static inline std::uint64_t siphash(const char* msg, size_t size)
260
- {
261
- return siphash(reinterpret_cast<const std::uint8_t*>(msg), size);
262
- }
263
-
264
- static inline std::uint64_t siphash(tlx::string_view str)
265
- {
266
- return siphash(str.data(), str.size());
267
- }
268
-
269
- template <typename Type>
270
- static inline std::uint64_t siphash(const Type& value)
271
- {
272
- return siphash(reinterpret_cast<const std::uint8_t*>(&value),
273
- sizeof(value));
274
- }
275
-
276
- #undef rol64
277
-
278
- } // namespace tlx
279
-
280
- #endif // !TLX_SIPHASH_HEADER
281
-
282
- /******************************************************************************/