@ladybugmem/icebug 0.1.0

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 (624) hide show
  1. package/README.md +14 -0
  2. package/binding.gyp +54 -0
  3. package/build/Release/.deps/Release/icebug.node.d +1 -0
  4. package/build/Release/.deps/Release/obj.target/icebug/src/addon.o.d +291 -0
  5. package/build/Release/icebug.node +0 -0
  6. package/build/Release/obj.target/icebug/src/addon.o +0 -0
  7. package/lib/index.d.ts +361 -0
  8. package/lib/index.js +102 -0
  9. package/package.json +42 -0
  10. package/src/addon.cpp +1253 -0
  11. package/vendor/include/networkit/GlobalState.hpp +86 -0
  12. package/vendor/include/networkit/Globals.hpp +41 -0
  13. package/vendor/include/networkit/algebraic/AlgebraicGlobals.hpp +27 -0
  14. package/vendor/include/networkit/algebraic/CSRGeneralMatrix.hpp +1292 -0
  15. package/vendor/include/networkit/algebraic/CSRMatrix.hpp +11 -0
  16. package/vendor/include/networkit/algebraic/DenseMatrix.hpp +537 -0
  17. package/vendor/include/networkit/algebraic/DynamicMatrix.hpp +514 -0
  18. package/vendor/include/networkit/algebraic/GraphBLAS.hpp +323 -0
  19. package/vendor/include/networkit/algebraic/MatrixTools.hpp +156 -0
  20. package/vendor/include/networkit/algebraic/Semirings.hpp +171 -0
  21. package/vendor/include/networkit/algebraic/SparseAccumulator.hpp +111 -0
  22. package/vendor/include/networkit/algebraic/Vector.hpp +371 -0
  23. package/vendor/include/networkit/algebraic/algorithms/AlgebraicBFS.hpp +72 -0
  24. package/vendor/include/networkit/algebraic/algorithms/AlgebraicBellmanFord.hpp +88 -0
  25. package/vendor/include/networkit/algebraic/algorithms/AlgebraicMatchingCoarsening.hpp +96 -0
  26. package/vendor/include/networkit/algebraic/algorithms/AlgebraicPageRank.hpp +145 -0
  27. package/vendor/include/networkit/algebraic/algorithms/AlgebraicSpanningEdgeCentrality.hpp +122 -0
  28. package/vendor/include/networkit/algebraic/algorithms/AlgebraicTriangleCounting.hpp +76 -0
  29. package/vendor/include/networkit/auxiliary/AlignedAllocator.hpp +113 -0
  30. package/vendor/include/networkit/auxiliary/ArrayTools.hpp +85 -0
  31. package/vendor/include/networkit/auxiliary/BloomFilter.hpp +70 -0
  32. package/vendor/include/networkit/auxiliary/BucketPQ.hpp +142 -0
  33. package/vendor/include/networkit/auxiliary/Enforce.hpp +117 -0
  34. package/vendor/include/networkit/auxiliary/FunctionTraits.hpp +74 -0
  35. package/vendor/include/networkit/auxiliary/HashUtils.hpp +28 -0
  36. package/vendor/include/networkit/auxiliary/IncrementalUniformRandomSelector.hpp +52 -0
  37. package/vendor/include/networkit/auxiliary/Log.hpp +119 -0
  38. package/vendor/include/networkit/auxiliary/MissingMath.hpp +48 -0
  39. package/vendor/include/networkit/auxiliary/Multiprecision.hpp +17 -0
  40. package/vendor/include/networkit/auxiliary/NumberParsing.hpp +307 -0
  41. package/vendor/include/networkit/auxiliary/NumericTools.hpp +57 -0
  42. package/vendor/include/networkit/auxiliary/Parallel.hpp +56 -0
  43. package/vendor/include/networkit/auxiliary/Parallelism.hpp +33 -0
  44. package/vendor/include/networkit/auxiliary/PrioQueue.hpp +252 -0
  45. package/vendor/include/networkit/auxiliary/Random.hpp +122 -0
  46. package/vendor/include/networkit/auxiliary/SetIntersector.hpp +72 -0
  47. package/vendor/include/networkit/auxiliary/SignalHandling.hpp +39 -0
  48. package/vendor/include/networkit/auxiliary/SortedList.hpp +128 -0
  49. package/vendor/include/networkit/auxiliary/SparseVector.hpp +215 -0
  50. package/vendor/include/networkit/auxiliary/SpinLock.hpp +23 -0
  51. package/vendor/include/networkit/auxiliary/StringBuilder.hpp +322 -0
  52. package/vendor/include/networkit/auxiliary/StringTools.hpp +76 -0
  53. package/vendor/include/networkit/auxiliary/TemplateUtils.hpp +76 -0
  54. package/vendor/include/networkit/auxiliary/Timer.hpp +145 -0
  55. package/vendor/include/networkit/auxiliary/VectorComparator.hpp +32 -0
  56. package/vendor/include/networkit/base/Algorithm.hpp +41 -0
  57. package/vendor/include/networkit/base/DynAlgorithm.hpp +31 -0
  58. package/vendor/include/networkit/centrality/ApproxBetweenness.hpp +62 -0
  59. package/vendor/include/networkit/centrality/ApproxCloseness.hpp +136 -0
  60. package/vendor/include/networkit/centrality/ApproxElectricalCloseness.hpp +156 -0
  61. package/vendor/include/networkit/centrality/ApproxGroupBetweenness.hpp +124 -0
  62. package/vendor/include/networkit/centrality/ApproxSpanningEdge.hpp +84 -0
  63. package/vendor/include/networkit/centrality/Betweenness.hpp +47 -0
  64. package/vendor/include/networkit/centrality/Centrality.hpp +98 -0
  65. package/vendor/include/networkit/centrality/Closeness.hpp +107 -0
  66. package/vendor/include/networkit/centrality/ComplexPaths.hpp +113 -0
  67. package/vendor/include/networkit/centrality/CoreDecomposition.hpp +161 -0
  68. package/vendor/include/networkit/centrality/DegreeCentrality.hpp +55 -0
  69. package/vendor/include/networkit/centrality/DynApproxBetweenness.hpp +95 -0
  70. package/vendor/include/networkit/centrality/DynBetweenness.hpp +99 -0
  71. package/vendor/include/networkit/centrality/DynBetweennessOneNode.hpp +98 -0
  72. package/vendor/include/networkit/centrality/DynKatzCentrality.hpp +115 -0
  73. package/vendor/include/networkit/centrality/DynTopHarmonicCloseness.hpp +223 -0
  74. package/vendor/include/networkit/centrality/EigenvectorCentrality.hpp +41 -0
  75. package/vendor/include/networkit/centrality/EstimateBetweenness.hpp +51 -0
  76. package/vendor/include/networkit/centrality/ForestCentrality.hpp +112 -0
  77. package/vendor/include/networkit/centrality/GedWalk.hpp +225 -0
  78. package/vendor/include/networkit/centrality/GroupCloseness.hpp +115 -0
  79. package/vendor/include/networkit/centrality/GroupClosenessGrowShrink.hpp +78 -0
  80. package/vendor/include/networkit/centrality/GroupClosenessLocalSearch.hpp +77 -0
  81. package/vendor/include/networkit/centrality/GroupClosenessLocalSwaps.hpp +106 -0
  82. package/vendor/include/networkit/centrality/GroupDegree.hpp +155 -0
  83. package/vendor/include/networkit/centrality/GroupHarmonicCloseness.hpp +83 -0
  84. package/vendor/include/networkit/centrality/HarmonicCloseness.hpp +48 -0
  85. package/vendor/include/networkit/centrality/KPathCentrality.hpp +52 -0
  86. package/vendor/include/networkit/centrality/KadabraBetweenness.hpp +242 -0
  87. package/vendor/include/networkit/centrality/KatzCentrality.hpp +62 -0
  88. package/vendor/include/networkit/centrality/LaplacianCentrality.hpp +44 -0
  89. package/vendor/include/networkit/centrality/LocalClusteringCoefficient.hpp +60 -0
  90. package/vendor/include/networkit/centrality/LocalPartitionCoverage.hpp +43 -0
  91. package/vendor/include/networkit/centrality/LocalSquareClusteringCoefficient.hpp +42 -0
  92. package/vendor/include/networkit/centrality/PageRank.hpp +101 -0
  93. package/vendor/include/networkit/centrality/PermanenceCentrality.hpp +48 -0
  94. package/vendor/include/networkit/centrality/Sfigality.hpp +45 -0
  95. package/vendor/include/networkit/centrality/SpanningEdgeCentrality.hpp +86 -0
  96. package/vendor/include/networkit/centrality/TopCloseness.hpp +136 -0
  97. package/vendor/include/networkit/centrality/TopHarmonicCloseness.hpp +151 -0
  98. package/vendor/include/networkit/clique/MaximalCliques.hpp +83 -0
  99. package/vendor/include/networkit/coarsening/ClusteringProjector.hpp +59 -0
  100. package/vendor/include/networkit/coarsening/CoarsenedGraphView.hpp +156 -0
  101. package/vendor/include/networkit/coarsening/GraphCoarsening.hpp +57 -0
  102. package/vendor/include/networkit/coarsening/MatchingCoarsening.hpp +43 -0
  103. package/vendor/include/networkit/coarsening/ParallelPartitionCoarsening.hpp +33 -0
  104. package/vendor/include/networkit/coarsening/ParallelPartitionCoarseningView.hpp +62 -0
  105. package/vendor/include/networkit/community/AdjustedRandMeasure.hpp +31 -0
  106. package/vendor/include/networkit/community/ClusteringGenerator.hpp +75 -0
  107. package/vendor/include/networkit/community/CommunityDetectionAlgorithm.hpp +58 -0
  108. package/vendor/include/networkit/community/Conductance.hpp +32 -0
  109. package/vendor/include/networkit/community/CoverF1Similarity.hpp +53 -0
  110. package/vendor/include/networkit/community/CoverHubDominance.hpp +38 -0
  111. package/vendor/include/networkit/community/Coverage.hpp +25 -0
  112. package/vendor/include/networkit/community/CutClustering.hpp +62 -0
  113. package/vendor/include/networkit/community/DissimilarityMeasure.hpp +31 -0
  114. package/vendor/include/networkit/community/DynamicNMIDistance.hpp +44 -0
  115. package/vendor/include/networkit/community/EdgeCut.hpp +24 -0
  116. package/vendor/include/networkit/community/GraphClusteringTools.hpp +103 -0
  117. package/vendor/include/networkit/community/GraphStructuralRandMeasure.hpp +28 -0
  118. package/vendor/include/networkit/community/HubDominance.hpp +46 -0
  119. package/vendor/include/networkit/community/IntrapartitionDensity.hpp +44 -0
  120. package/vendor/include/networkit/community/IsolatedInterpartitionConductance.hpp +40 -0
  121. package/vendor/include/networkit/community/IsolatedInterpartitionExpansion.hpp +40 -0
  122. package/vendor/include/networkit/community/JaccardMeasure.hpp +25 -0
  123. package/vendor/include/networkit/community/LFM.hpp +49 -0
  124. package/vendor/include/networkit/community/LPDegreeOrdered.hpp +48 -0
  125. package/vendor/include/networkit/community/LocalCommunityEvaluation.hpp +100 -0
  126. package/vendor/include/networkit/community/LocalCoverEvaluation.hpp +31 -0
  127. package/vendor/include/networkit/community/LocalPartitionEvaluation.hpp +31 -0
  128. package/vendor/include/networkit/community/LouvainMapEquation.hpp +135 -0
  129. package/vendor/include/networkit/community/Modularity.hpp +54 -0
  130. package/vendor/include/networkit/community/NMIDistance.hpp +28 -0
  131. package/vendor/include/networkit/community/NodeStructuralRandMeasure.hpp +27 -0
  132. package/vendor/include/networkit/community/OverlappingCommunityDetectionAlgorithm.hpp +51 -0
  133. package/vendor/include/networkit/community/OverlappingNMIDistance.hpp +175 -0
  134. package/vendor/include/networkit/community/PLM.hpp +89 -0
  135. package/vendor/include/networkit/community/PLP.hpp +83 -0
  136. package/vendor/include/networkit/community/ParallelAgglomerativeClusterer.hpp +37 -0
  137. package/vendor/include/networkit/community/ParallelLeiden.hpp +96 -0
  138. package/vendor/include/networkit/community/ParallelLeidenView.hpp +138 -0
  139. package/vendor/include/networkit/community/PartitionFragmentation.hpp +30 -0
  140. package/vendor/include/networkit/community/PartitionHubDominance.hpp +37 -0
  141. package/vendor/include/networkit/community/PartitionIntersection.hpp +25 -0
  142. package/vendor/include/networkit/community/QualityMeasure.hpp +27 -0
  143. package/vendor/include/networkit/community/SampledGraphStructuralRandMeasure.hpp +40 -0
  144. package/vendor/include/networkit/community/SampledNodeStructuralRandMeasure.hpp +40 -0
  145. package/vendor/include/networkit/community/StablePartitionNodes.hpp +48 -0
  146. package/vendor/include/networkit/components/BiconnectedComponents.hpp +116 -0
  147. package/vendor/include/networkit/components/ComponentDecomposition.hpp +72 -0
  148. package/vendor/include/networkit/components/ConnectedComponents.hpp +55 -0
  149. package/vendor/include/networkit/components/DynConnectedComponents.hpp +71 -0
  150. package/vendor/include/networkit/components/DynWeaklyConnectedComponents.hpp +73 -0
  151. package/vendor/include/networkit/components/ParallelConnectedComponents.hpp +44 -0
  152. package/vendor/include/networkit/components/RandomSpanningForest.hpp +36 -0
  153. package/vendor/include/networkit/components/StronglyConnectedComponents.hpp +50 -0
  154. package/vendor/include/networkit/components/WeaklyConnectedComponents.hpp +59 -0
  155. package/vendor/include/networkit/correlation/Assortativity.hpp +64 -0
  156. package/vendor/include/networkit/distance/APSP.hpp +70 -0
  157. package/vendor/include/networkit/distance/AStar.hpp +68 -0
  158. package/vendor/include/networkit/distance/AStarGeneral.hpp +110 -0
  159. package/vendor/include/networkit/distance/AdamicAdarDistance.hpp +52 -0
  160. package/vendor/include/networkit/distance/AffectedNodes.hpp +130 -0
  161. package/vendor/include/networkit/distance/AlgebraicDistance.hpp +63 -0
  162. package/vendor/include/networkit/distance/BFS.hpp +43 -0
  163. package/vendor/include/networkit/distance/BidirectionalBFS.hpp +51 -0
  164. package/vendor/include/networkit/distance/BidirectionalDijkstra.hpp +69 -0
  165. package/vendor/include/networkit/distance/CommuteTimeDistance.hpp +89 -0
  166. package/vendor/include/networkit/distance/Diameter.hpp +97 -0
  167. package/vendor/include/networkit/distance/Dijkstra.hpp +50 -0
  168. package/vendor/include/networkit/distance/DynAPSP.hpp +67 -0
  169. package/vendor/include/networkit/distance/DynBFS.hpp +56 -0
  170. package/vendor/include/networkit/distance/DynDijkstra.hpp +57 -0
  171. package/vendor/include/networkit/distance/DynPrunedLandmarkLabeling.hpp +67 -0
  172. package/vendor/include/networkit/distance/DynSSSP.hpp +87 -0
  173. package/vendor/include/networkit/distance/Eccentricity.hpp +32 -0
  174. package/vendor/include/networkit/distance/EffectiveDiameter.hpp +47 -0
  175. package/vendor/include/networkit/distance/EffectiveDiameterApproximation.hpp +57 -0
  176. package/vendor/include/networkit/distance/FloydWarshall.hpp +93 -0
  177. package/vendor/include/networkit/distance/GraphDistance.hpp +49 -0
  178. package/vendor/include/networkit/distance/HopPlotApproximation.hpp +62 -0
  179. package/vendor/include/networkit/distance/IncompleteDijkstra.hpp +66 -0
  180. package/vendor/include/networkit/distance/IncompleteSSSP.hpp +41 -0
  181. package/vendor/include/networkit/distance/JaccardDistance.hpp +57 -0
  182. package/vendor/include/networkit/distance/MultiTargetBFS.hpp +32 -0
  183. package/vendor/include/networkit/distance/MultiTargetDijkstra.hpp +40 -0
  184. package/vendor/include/networkit/distance/NeighborhoodFunction.hpp +47 -0
  185. package/vendor/include/networkit/distance/NeighborhoodFunctionApproximation.hpp +56 -0
  186. package/vendor/include/networkit/distance/NeighborhoodFunctionHeuristic.hpp +56 -0
  187. package/vendor/include/networkit/distance/NodeDistance.hpp +54 -0
  188. package/vendor/include/networkit/distance/PrunedLandmarkLabeling.hpp +76 -0
  189. package/vendor/include/networkit/distance/ReverseBFS.hpp +46 -0
  190. package/vendor/include/networkit/distance/SPSP.hpp +143 -0
  191. package/vendor/include/networkit/distance/SSSP.hpp +216 -0
  192. package/vendor/include/networkit/distance/STSP.hpp +193 -0
  193. package/vendor/include/networkit/distance/Volume.hpp +66 -0
  194. package/vendor/include/networkit/dynamics/DGSStreamParser.hpp +40 -0
  195. package/vendor/include/networkit/dynamics/DGSWriter.hpp +30 -0
  196. package/vendor/include/networkit/dynamics/GraphDifference.hpp +110 -0
  197. package/vendor/include/networkit/dynamics/GraphEvent.hpp +55 -0
  198. package/vendor/include/networkit/dynamics/GraphEventHandler.hpp +39 -0
  199. package/vendor/include/networkit/dynamics/GraphEventProxy.hpp +55 -0
  200. package/vendor/include/networkit/dynamics/GraphUpdater.hpp +38 -0
  201. package/vendor/include/networkit/edgescores/ChibaNishizekiQuadrangleEdgeScore.hpp +26 -0
  202. package/vendor/include/networkit/edgescores/ChibaNishizekiTriangleEdgeScore.hpp +33 -0
  203. package/vendor/include/networkit/edgescores/EdgeScore.hpp +50 -0
  204. package/vendor/include/networkit/edgescores/EdgeScoreAsWeight.hpp +33 -0
  205. package/vendor/include/networkit/edgescores/EdgeScoreBlender.hpp +33 -0
  206. package/vendor/include/networkit/edgescores/EdgeScoreLinearizer.hpp +32 -0
  207. package/vendor/include/networkit/edgescores/EdgeScoreNormalizer.hpp +35 -0
  208. package/vendor/include/networkit/edgescores/GeometricMeanScore.hpp +29 -0
  209. package/vendor/include/networkit/edgescores/PrefixJaccardScore.hpp +23 -0
  210. package/vendor/include/networkit/edgescores/TriangleEdgeScore.hpp +39 -0
  211. package/vendor/include/networkit/embedding/Node2Vec.hpp +83 -0
  212. package/vendor/include/networkit/flow/EdmondsKarp.hpp +112 -0
  213. package/vendor/include/networkit/generators/BarabasiAlbertGenerator.hpp +87 -0
  214. package/vendor/include/networkit/generators/ChungLuGenerator.hpp +46 -0
  215. package/vendor/include/networkit/generators/ChungLuGeneratorAlamEtAl.hpp +63 -0
  216. package/vendor/include/networkit/generators/ClusteredRandomGraphGenerator.hpp +56 -0
  217. package/vendor/include/networkit/generators/ConfigurationModel.hpp +36 -0
  218. package/vendor/include/networkit/generators/DorogovtsevMendesGenerator.hpp +33 -0
  219. package/vendor/include/networkit/generators/DynamicBarabasiAlbertGenerator.hpp +33 -0
  220. package/vendor/include/networkit/generators/DynamicDGSParser.hpp +51 -0
  221. package/vendor/include/networkit/generators/DynamicDorogovtsevMendesGenerator.hpp +34 -0
  222. package/vendor/include/networkit/generators/DynamicForestFireGenerator.hpp +55 -0
  223. package/vendor/include/networkit/generators/DynamicGraphGenerator.hpp +40 -0
  224. package/vendor/include/networkit/generators/DynamicGraphSource.hpp +79 -0
  225. package/vendor/include/networkit/generators/DynamicHyperbolicGenerator.hpp +143 -0
  226. package/vendor/include/networkit/generators/DynamicPathGenerator.hpp +26 -0
  227. package/vendor/include/networkit/generators/DynamicPubWebGenerator.hpp +54 -0
  228. package/vendor/include/networkit/generators/EdgeSwitchingMarkovChainGenerator.hpp +65 -0
  229. package/vendor/include/networkit/generators/ErdosRenyiEnumerator.hpp +318 -0
  230. package/vendor/include/networkit/generators/ErdosRenyiGenerator.hpp +56 -0
  231. package/vendor/include/networkit/generators/HavelHakimiGenerator.hpp +48 -0
  232. package/vendor/include/networkit/generators/HyperbolicGenerator.hpp +236 -0
  233. package/vendor/include/networkit/generators/LFRGenerator.hpp +175 -0
  234. package/vendor/include/networkit/generators/MocnikGenerator.hpp +147 -0
  235. package/vendor/include/networkit/generators/MocnikGeneratorBasic.hpp +58 -0
  236. package/vendor/include/networkit/generators/PowerlawDegreeSequence.hpp +128 -0
  237. package/vendor/include/networkit/generators/PubWebGenerator.hpp +94 -0
  238. package/vendor/include/networkit/generators/RegularRingLatticeGenerator.hpp +37 -0
  239. package/vendor/include/networkit/generators/RmatGenerator.hpp +67 -0
  240. package/vendor/include/networkit/generators/StaticDegreeSequenceGenerator.hpp +42 -0
  241. package/vendor/include/networkit/generators/StaticGraphGenerator.hpp +30 -0
  242. package/vendor/include/networkit/generators/StochasticBlockmodel.hpp +41 -0
  243. package/vendor/include/networkit/generators/WattsStrogatzGenerator.hpp +43 -0
  244. package/vendor/include/networkit/generators/quadtree/QuadNode.hpp +857 -0
  245. package/vendor/include/networkit/generators/quadtree/QuadNodeCartesianEuclid.hpp +587 -0
  246. package/vendor/include/networkit/generators/quadtree/QuadNodePolarEuclid.hpp +726 -0
  247. package/vendor/include/networkit/generators/quadtree/Quadtree.hpp +232 -0
  248. package/vendor/include/networkit/generators/quadtree/QuadtreeCartesianEuclid.hpp +149 -0
  249. package/vendor/include/networkit/generators/quadtree/QuadtreePolarEuclid.hpp +143 -0
  250. package/vendor/include/networkit/geometric/HyperbolicSpace.hpp +248 -0
  251. package/vendor/include/networkit/geometric/Point2DWithIndex.hpp +145 -0
  252. package/vendor/include/networkit/global/ClusteringCoefficient.hpp +42 -0
  253. package/vendor/include/networkit/global/GlobalClusteringCoefficient.hpp +24 -0
  254. package/vendor/include/networkit/graph/Attributes.hpp +568 -0
  255. package/vendor/include/networkit/graph/BFS.hpp +111 -0
  256. package/vendor/include/networkit/graph/DFS.hpp +71 -0
  257. package/vendor/include/networkit/graph/Dijkstra.hpp +83 -0
  258. package/vendor/include/networkit/graph/EdgeIterators.hpp +171 -0
  259. package/vendor/include/networkit/graph/Graph.hpp +2083 -0
  260. package/vendor/include/networkit/graph/GraphBuilder.hpp +289 -0
  261. package/vendor/include/networkit/graph/GraphR.hpp +133 -0
  262. package/vendor/include/networkit/graph/GraphTools.hpp +589 -0
  263. package/vendor/include/networkit/graph/GraphW.hpp +1236 -0
  264. package/vendor/include/networkit/graph/KruskalMSF.hpp +50 -0
  265. package/vendor/include/networkit/graph/NeighborIterators.hpp +163 -0
  266. package/vendor/include/networkit/graph/NodeIterators.hpp +127 -0
  267. package/vendor/include/networkit/graph/PrimMSF.hpp +66 -0
  268. package/vendor/include/networkit/graph/RandomMaximumSpanningForest.hpp +133 -0
  269. package/vendor/include/networkit/graph/SpanningForest.hpp +41 -0
  270. package/vendor/include/networkit/graph/TopologicalSort.hpp +87 -0
  271. package/vendor/include/networkit/graph/UnionMaximumSpanningForest.hpp +126 -0
  272. package/vendor/include/networkit/graph/test/GraphBuilderBenchmark.hpp +68 -0
  273. package/vendor/include/networkit/independentset/IndependentSetFinder.hpp +44 -0
  274. package/vendor/include/networkit/independentset/Luby.hpp +27 -0
  275. package/vendor/include/networkit/io/BinaryEdgeListPartitionReader.hpp +45 -0
  276. package/vendor/include/networkit/io/BinaryEdgeListPartitionWriter.hpp +47 -0
  277. package/vendor/include/networkit/io/BinaryPartitionReader.hpp +41 -0
  278. package/vendor/include/networkit/io/BinaryPartitionWriter.hpp +44 -0
  279. package/vendor/include/networkit/io/CoverReader.hpp +27 -0
  280. package/vendor/include/networkit/io/CoverWriter.hpp +21 -0
  281. package/vendor/include/networkit/io/DGSReader.hpp +39 -0
  282. package/vendor/include/networkit/io/DibapGraphReader.hpp +43 -0
  283. package/vendor/include/networkit/io/DotGraphWriter.hpp +39 -0
  284. package/vendor/include/networkit/io/DotPartitionWriter.hpp +23 -0
  285. package/vendor/include/networkit/io/DynamicGraphReader.hpp +29 -0
  286. package/vendor/include/networkit/io/EdgeListCoverReader.hpp +35 -0
  287. package/vendor/include/networkit/io/EdgeListPartitionReader.hpp +43 -0
  288. package/vendor/include/networkit/io/EdgeListReader.hpp +61 -0
  289. package/vendor/include/networkit/io/EdgeListWriter.hpp +48 -0
  290. package/vendor/include/networkit/io/GMLGraphReader.hpp +33 -0
  291. package/vendor/include/networkit/io/GMLGraphWriter.hpp +33 -0
  292. package/vendor/include/networkit/io/GraphIO.hpp +52 -0
  293. package/vendor/include/networkit/io/GraphReader.hpp +40 -0
  294. package/vendor/include/networkit/io/GraphToolBinaryReader.hpp +71 -0
  295. package/vendor/include/networkit/io/GraphToolBinaryWriter.hpp +61 -0
  296. package/vendor/include/networkit/io/GraphWriter.hpp +27 -0
  297. package/vendor/include/networkit/io/KONECTGraphReader.hpp +44 -0
  298. package/vendor/include/networkit/io/LineFileReader.hpp +42 -0
  299. package/vendor/include/networkit/io/METISGraphReader.hpp +36 -0
  300. package/vendor/include/networkit/io/METISGraphWriter.hpp +29 -0
  301. package/vendor/include/networkit/io/METISParser.hpp +63 -0
  302. package/vendor/include/networkit/io/MTXGraphReader.hpp +31 -0
  303. package/vendor/include/networkit/io/MTXParser.hpp +87 -0
  304. package/vendor/include/networkit/io/MatrixMarketReader.hpp +33 -0
  305. package/vendor/include/networkit/io/MatrixReader.hpp +33 -0
  306. package/vendor/include/networkit/io/MemoryMappedFile.hpp +80 -0
  307. package/vendor/include/networkit/io/NetworkitBinaryGraph.hpp +144 -0
  308. package/vendor/include/networkit/io/NetworkitBinaryReader.hpp +50 -0
  309. package/vendor/include/networkit/io/NetworkitBinaryWriter.hpp +71 -0
  310. package/vendor/include/networkit/io/PartitionReader.hpp +34 -0
  311. package/vendor/include/networkit/io/PartitionWriter.hpp +31 -0
  312. package/vendor/include/networkit/io/RBGraphReader.hpp +37 -0
  313. package/vendor/include/networkit/io/RBMatrixReader.hpp +49 -0
  314. package/vendor/include/networkit/io/RasterReader.hpp +40 -0
  315. package/vendor/include/networkit/io/SNAPEdgeListPartitionReader.hpp +28 -0
  316. package/vendor/include/networkit/io/SNAPGraphReader.hpp +53 -0
  317. package/vendor/include/networkit/io/SNAPGraphWriter.hpp +53 -0
  318. package/vendor/include/networkit/io/ThrillGraphBinaryReader.hpp +44 -0
  319. package/vendor/include/networkit/io/ThrillGraphBinaryWriter.hpp +27 -0
  320. package/vendor/include/networkit/layout/LayoutAlgorithm.hpp +39 -0
  321. package/vendor/include/networkit/linkprediction/AdamicAdarIndex.hpp +37 -0
  322. package/vendor/include/networkit/linkprediction/AdjustedRandIndex.hpp +36 -0
  323. package/vendor/include/networkit/linkprediction/AlgebraicDistanceIndex.hpp +70 -0
  324. package/vendor/include/networkit/linkprediction/CommonNeighborsIndex.hpp +39 -0
  325. package/vendor/include/networkit/linkprediction/EvaluationMetric.hpp +135 -0
  326. package/vendor/include/networkit/linkprediction/JaccardIndex.hpp +44 -0
  327. package/vendor/include/networkit/linkprediction/KatzIndex.hpp +84 -0
  328. package/vendor/include/networkit/linkprediction/LinkPredictor.hpp +98 -0
  329. package/vendor/include/networkit/linkprediction/LinkThresholder.hpp +56 -0
  330. package/vendor/include/networkit/linkprediction/MissingLinksFinder.hpp +60 -0
  331. package/vendor/include/networkit/linkprediction/NeighborhoodDistanceIndex.hpp +42 -0
  332. package/vendor/include/networkit/linkprediction/NeighborhoodUtility.hpp +54 -0
  333. package/vendor/include/networkit/linkprediction/NeighborsMeasureIndex.hpp +48 -0
  334. package/vendor/include/networkit/linkprediction/PrecisionRecallMetric.hpp +40 -0
  335. package/vendor/include/networkit/linkprediction/PredictionsSorter.hpp +66 -0
  336. package/vendor/include/networkit/linkprediction/PreferentialAttachmentIndex.hpp +37 -0
  337. package/vendor/include/networkit/linkprediction/ROCMetric.hpp +39 -0
  338. package/vendor/include/networkit/linkprediction/RandomLinkSampler.hpp +47 -0
  339. package/vendor/include/networkit/linkprediction/ResourceAllocationIndex.hpp +38 -0
  340. package/vendor/include/networkit/linkprediction/SameCommunityIndex.hpp +50 -0
  341. package/vendor/include/networkit/linkprediction/TotalNeighborsIndex.hpp +39 -0
  342. package/vendor/include/networkit/linkprediction/UDegreeIndex.hpp +35 -0
  343. package/vendor/include/networkit/linkprediction/VDegreeIndex.hpp +35 -0
  344. package/vendor/include/networkit/matching/BMatcher.hpp +52 -0
  345. package/vendor/include/networkit/matching/BMatching.hpp +115 -0
  346. package/vendor/include/networkit/matching/BSuitorMatcher.hpp +170 -0
  347. package/vendor/include/networkit/matching/DynamicBSuitorMatcher.hpp +78 -0
  348. package/vendor/include/networkit/matching/LocalMaxMatcher.hpp +35 -0
  349. package/vendor/include/networkit/matching/Matcher.hpp +55 -0
  350. package/vendor/include/networkit/matching/Matching.hpp +111 -0
  351. package/vendor/include/networkit/matching/PathGrowingMatcher.hpp +46 -0
  352. package/vendor/include/networkit/matching/SuitorMatcher.hpp +62 -0
  353. package/vendor/include/networkit/numerics/ConjugateGradient.hpp +163 -0
  354. package/vendor/include/networkit/numerics/GaussSeidelRelaxation.hpp +99 -0
  355. package/vendor/include/networkit/numerics/LAMG/LAMGSettings.hpp +70 -0
  356. package/vendor/include/networkit/numerics/LAMG/Lamg.hpp +460 -0
  357. package/vendor/include/networkit/numerics/LAMG/Level/EliminationStage.hpp +47 -0
  358. package/vendor/include/networkit/numerics/LAMG/Level/Level.hpp +56 -0
  359. package/vendor/include/networkit/numerics/LAMG/Level/LevelAggregation.hpp +52 -0
  360. package/vendor/include/networkit/numerics/LAMG/Level/LevelElimination.hpp +133 -0
  361. package/vendor/include/networkit/numerics/LAMG/Level/LevelFinest.hpp +28 -0
  362. package/vendor/include/networkit/numerics/LAMG/LevelHierarchy.hpp +165 -0
  363. package/vendor/include/networkit/numerics/LAMG/MultiLevelSetup.hpp +1090 -0
  364. package/vendor/include/networkit/numerics/LAMG/SolverLamg.hpp +316 -0
  365. package/vendor/include/networkit/numerics/LinearSolver.hpp +151 -0
  366. package/vendor/include/networkit/numerics/Preconditioner/DiagonalPreconditioner.hpp +61 -0
  367. package/vendor/include/networkit/numerics/Preconditioner/IdentityPreconditioner.hpp +36 -0
  368. package/vendor/include/networkit/numerics/Smoother.hpp +37 -0
  369. package/vendor/include/networkit/overlap/HashingOverlapper.hpp +28 -0
  370. package/vendor/include/networkit/overlap/Overlapper.hpp +27 -0
  371. package/vendor/include/networkit/planarity/LeftRightPlanarityCheck.hpp +113 -0
  372. package/vendor/include/networkit/randomization/Curveball.hpp +49 -0
  373. package/vendor/include/networkit/randomization/CurveballGlobalTradeGenerator.hpp +39 -0
  374. package/vendor/include/networkit/randomization/CurveballUniformTradeGenerator.hpp +39 -0
  375. package/vendor/include/networkit/randomization/DegreePreservingShuffle.hpp +82 -0
  376. package/vendor/include/networkit/randomization/EdgeSwitching.hpp +157 -0
  377. package/vendor/include/networkit/randomization/GlobalCurveball.hpp +69 -0
  378. package/vendor/include/networkit/randomization/GlobalTradeSequence.hpp +303 -0
  379. package/vendor/include/networkit/reachability/AllSimplePaths.hpp +122 -0
  380. package/vendor/include/networkit/reachability/ReachableNodes.hpp +83 -0
  381. package/vendor/include/networkit/scd/ApproximatePageRank.hpp +51 -0
  382. package/vendor/include/networkit/scd/CliqueDetect.hpp +55 -0
  383. package/vendor/include/networkit/scd/CombinedSCD.hpp +51 -0
  384. package/vendor/include/networkit/scd/GCE.hpp +42 -0
  385. package/vendor/include/networkit/scd/LFMLocal.hpp +54 -0
  386. package/vendor/include/networkit/scd/LocalT.hpp +40 -0
  387. package/vendor/include/networkit/scd/LocalTightnessExpansion.hpp +46 -0
  388. package/vendor/include/networkit/scd/PageRankNibble.hpp +55 -0
  389. package/vendor/include/networkit/scd/RandomBFS.hpp +33 -0
  390. package/vendor/include/networkit/scd/SCDGroundTruthComparison.hpp +121 -0
  391. package/vendor/include/networkit/scd/SelectiveCommunityDetector.hpp +76 -0
  392. package/vendor/include/networkit/scd/SetConductance.hpp +47 -0
  393. package/vendor/include/networkit/scd/TCE.hpp +41 -0
  394. package/vendor/include/networkit/scd/TwoPhaseL.hpp +40 -0
  395. package/vendor/include/networkit/scoring/EdgeScoring.hpp +44 -0
  396. package/vendor/include/networkit/scoring/ModularityScoring.hpp +79 -0
  397. package/vendor/include/networkit/simulation/EpidemicSimulationSEIR.hpp +59 -0
  398. package/vendor/include/networkit/sparsification/ChanceCorrectedTriangleScore.hpp +28 -0
  399. package/vendor/include/networkit/sparsification/ForestFireScore.hpp +34 -0
  400. package/vendor/include/networkit/sparsification/GlobalThresholdFilter.hpp +40 -0
  401. package/vendor/include/networkit/sparsification/LocalDegreeScore.hpp +30 -0
  402. package/vendor/include/networkit/sparsification/LocalFilterScore.hpp +124 -0
  403. package/vendor/include/networkit/sparsification/LocalSimilarityScore.hpp +63 -0
  404. package/vendor/include/networkit/sparsification/MultiscaleScore.hpp +38 -0
  405. package/vendor/include/networkit/sparsification/RandomEdgeScore.hpp +33 -0
  406. package/vendor/include/networkit/sparsification/RandomNodeEdgeScore.hpp +29 -0
  407. package/vendor/include/networkit/sparsification/SCANStructuralSimilarityScore.hpp +23 -0
  408. package/vendor/include/networkit/sparsification/SimmelianOverlapScore.hpp +35 -0
  409. package/vendor/include/networkit/sparsification/SimmelianScore.hpp +92 -0
  410. package/vendor/include/networkit/sparsification/Sparsifiers.hpp +166 -0
  411. package/vendor/include/networkit/structures/Cover.hpp +248 -0
  412. package/vendor/include/networkit/structures/LocalCommunity.hpp +363 -0
  413. package/vendor/include/networkit/structures/Partition.hpp +335 -0
  414. package/vendor/include/networkit/structures/UnionFind.hpp +66 -0
  415. package/vendor/include/networkit/viz/GraphLayoutAlgorithm.hpp +157 -0
  416. package/vendor/include/networkit/viz/MaxentStress.hpp +346 -0
  417. package/vendor/include/networkit/viz/Octree.hpp +428 -0
  418. package/vendor/include/networkit/viz/PivotMDS.hpp +63 -0
  419. package/vendor/include/networkit/viz/Point.hpp +415 -0
  420. package/vendor/include/networkit/viz/PostscriptWriter.hpp +78 -0
  421. package/vendor/include/tlx/algorithm/exclusive_scan.hpp +56 -0
  422. package/vendor/include/tlx/algorithm/is_sorted_cmp.hpp +56 -0
  423. package/vendor/include/tlx/algorithm/merge_advance.hpp +177 -0
  424. package/vendor/include/tlx/algorithm/merge_combine.hpp +76 -0
  425. package/vendor/include/tlx/algorithm/multisequence_partition.hpp +346 -0
  426. package/vendor/include/tlx/algorithm/multisequence_selection.hpp +351 -0
  427. package/vendor/include/tlx/algorithm/multiway_merge.hpp +1385 -0
  428. package/vendor/include/tlx/algorithm/multiway_merge_splitting.hpp +257 -0
  429. package/vendor/include/tlx/algorithm/parallel_multiway_merge.hpp +408 -0
  430. package/vendor/include/tlx/algorithm/random_bipartition_shuffle.hpp +116 -0
  431. package/vendor/include/tlx/algorithm.hpp +36 -0
  432. package/vendor/include/tlx/allocator_base.hpp +100 -0
  433. package/vendor/include/tlx/backtrace.hpp +54 -0
  434. package/vendor/include/tlx/cmdline_parser.hpp +498 -0
  435. package/vendor/include/tlx/container/btree.hpp +3977 -0
  436. package/vendor/include/tlx/container/btree_map.hpp +634 -0
  437. package/vendor/include/tlx/container/btree_multimap.hpp +627 -0
  438. package/vendor/include/tlx/container/btree_multiset.hpp +612 -0
  439. package/vendor/include/tlx/container/btree_set.hpp +612 -0
  440. package/vendor/include/tlx/container/d_ary_addressable_int_heap.hpp +416 -0
  441. package/vendor/include/tlx/container/d_ary_heap.hpp +311 -0
  442. package/vendor/include/tlx/container/loser_tree.hpp +1009 -0
  443. package/vendor/include/tlx/container/lru_cache.hpp +319 -0
  444. package/vendor/include/tlx/container/radix_heap.hpp +735 -0
  445. package/vendor/include/tlx/container/ring_buffer.hpp +428 -0
  446. package/vendor/include/tlx/container/simple_vector.hpp +304 -0
  447. package/vendor/include/tlx/container/splay_tree.hpp +399 -0
  448. package/vendor/include/tlx/container/string_view.hpp +805 -0
  449. package/vendor/include/tlx/container.hpp +40 -0
  450. package/vendor/include/tlx/counting_ptr.hpp +522 -0
  451. package/vendor/include/tlx/define/attribute_always_inline.hpp +34 -0
  452. package/vendor/include/tlx/define/attribute_fallthrough.hpp +36 -0
  453. package/vendor/include/tlx/define/attribute_format_printf.hpp +34 -0
  454. package/vendor/include/tlx/define/attribute_packed.hpp +34 -0
  455. package/vendor/include/tlx/define/attribute_warn_unused_result.hpp +34 -0
  456. package/vendor/include/tlx/define/constexpr.hpp +31 -0
  457. package/vendor/include/tlx/define/deprecated.hpp +39 -0
  458. package/vendor/include/tlx/define/endian.hpp +49 -0
  459. package/vendor/include/tlx/define/likely.hpp +33 -0
  460. package/vendor/include/tlx/define/visibility_hidden.hpp +34 -0
  461. package/vendor/include/tlx/define.hpp +36 -0
  462. package/vendor/include/tlx/delegate.hpp +524 -0
  463. package/vendor/include/tlx/die/core.hpp +311 -0
  464. package/vendor/include/tlx/die.hpp +106 -0
  465. package/vendor/include/tlx/digest/md5.hpp +81 -0
  466. package/vendor/include/tlx/digest/sha1.hpp +81 -0
  467. package/vendor/include/tlx/digest/sha256.hpp +81 -0
  468. package/vendor/include/tlx/digest/sha512.hpp +81 -0
  469. package/vendor/include/tlx/digest.hpp +30 -0
  470. package/vendor/include/tlx/logger/all.hpp +33 -0
  471. package/vendor/include/tlx/logger/array.hpp +43 -0
  472. package/vendor/include/tlx/logger/core.hpp +287 -0
  473. package/vendor/include/tlx/logger/deque.hpp +42 -0
  474. package/vendor/include/tlx/logger/map.hpp +65 -0
  475. package/vendor/include/tlx/logger/set.hpp +60 -0
  476. package/vendor/include/tlx/logger/tuple.hpp +66 -0
  477. package/vendor/include/tlx/logger/unordered_map.hpp +68 -0
  478. package/vendor/include/tlx/logger/unordered_set.hpp +64 -0
  479. package/vendor/include/tlx/logger/wrap_unprintable.hpp +75 -0
  480. package/vendor/include/tlx/logger.hpp +44 -0
  481. package/vendor/include/tlx/math/abs_diff.hpp +35 -0
  482. package/vendor/include/tlx/math/aggregate.hpp +231 -0
  483. package/vendor/include/tlx/math/aggregate_min_max.hpp +116 -0
  484. package/vendor/include/tlx/math/bswap.hpp +148 -0
  485. package/vendor/include/tlx/math/bswap_be.hpp +79 -0
  486. package/vendor/include/tlx/math/bswap_le.hpp +79 -0
  487. package/vendor/include/tlx/math/clz.hpp +174 -0
  488. package/vendor/include/tlx/math/ctz.hpp +174 -0
  489. package/vendor/include/tlx/math/div_ceil.hpp +36 -0
  490. package/vendor/include/tlx/math/ffs.hpp +123 -0
  491. package/vendor/include/tlx/math/integer_log2.hpp +189 -0
  492. package/vendor/include/tlx/math/is_power_of_two.hpp +74 -0
  493. package/vendor/include/tlx/math/polynomial_regression.hpp +243 -0
  494. package/vendor/include/tlx/math/popcount.hpp +173 -0
  495. package/vendor/include/tlx/math/power_to_the.hpp +44 -0
  496. package/vendor/include/tlx/math/rol.hpp +112 -0
  497. package/vendor/include/tlx/math/ror.hpp +112 -0
  498. package/vendor/include/tlx/math/round_to_power_of_two.hpp +121 -0
  499. package/vendor/include/tlx/math/round_up.hpp +36 -0
  500. package/vendor/include/tlx/math/sgn.hpp +38 -0
  501. package/vendor/include/tlx/math.hpp +46 -0
  502. package/vendor/include/tlx/meta/apply_tuple.hpp +55 -0
  503. package/vendor/include/tlx/meta/call_for_range.hpp +78 -0
  504. package/vendor/include/tlx/meta/call_foreach.hpp +60 -0
  505. package/vendor/include/tlx/meta/call_foreach_tuple.hpp +60 -0
  506. package/vendor/include/tlx/meta/call_foreach_tuple_with_index.hpp +61 -0
  507. package/vendor/include/tlx/meta/call_foreach_with_index.hpp +64 -0
  508. package/vendor/include/tlx/meta/enable_if.hpp +37 -0
  509. package/vendor/include/tlx/meta/fold_left.hpp +63 -0
  510. package/vendor/include/tlx/meta/fold_left_tuple.hpp +60 -0
  511. package/vendor/include/tlx/meta/fold_right.hpp +63 -0
  512. package/vendor/include/tlx/meta/fold_right_tuple.hpp +60 -0
  513. package/vendor/include/tlx/meta/function_chain.hpp +197 -0
  514. package/vendor/include/tlx/meta/function_stack.hpp +189 -0
  515. package/vendor/include/tlx/meta/has_member.hpp +80 -0
  516. package/vendor/include/tlx/meta/has_method.hpp +117 -0
  517. package/vendor/include/tlx/meta/index_sequence.hpp +66 -0
  518. package/vendor/include/tlx/meta/is_std_array.hpp +40 -0
  519. package/vendor/include/tlx/meta/is_std_pair.hpp +39 -0
  520. package/vendor/include/tlx/meta/is_std_tuple.hpp +39 -0
  521. package/vendor/include/tlx/meta/is_std_vector.hpp +39 -0
  522. package/vendor/include/tlx/meta/log2.hpp +101 -0
  523. package/vendor/include/tlx/meta/no_operation.hpp +55 -0
  524. package/vendor/include/tlx/meta/static_index.hpp +42 -0
  525. package/vendor/include/tlx/meta/vexpand.hpp +34 -0
  526. package/vendor/include/tlx/meta/vmap_for_range.hpp +84 -0
  527. package/vendor/include/tlx/meta/vmap_foreach.hpp +63 -0
  528. package/vendor/include/tlx/meta/vmap_foreach_tuple.hpp +59 -0
  529. package/vendor/include/tlx/meta/vmap_foreach_tuple_with_index.hpp +62 -0
  530. package/vendor/include/tlx/meta/vmap_foreach_with_index.hpp +70 -0
  531. package/vendor/include/tlx/meta.hpp +55 -0
  532. package/vendor/include/tlx/multi_timer.hpp +148 -0
  533. package/vendor/include/tlx/port/setenv.hpp +31 -0
  534. package/vendor/include/tlx/port.hpp +27 -0
  535. package/vendor/include/tlx/semaphore.hpp +119 -0
  536. package/vendor/include/tlx/simple_vector.hpp +20 -0
  537. package/vendor/include/tlx/siphash.hpp +282 -0
  538. package/vendor/include/tlx/sort/networks/best.hpp +611 -0
  539. package/vendor/include/tlx/sort/networks/bose_nelson.hpp +412 -0
  540. package/vendor/include/tlx/sort/networks/bose_nelson_parameter.hpp +507 -0
  541. package/vendor/include/tlx/sort/networks/cswap.hpp +60 -0
  542. package/vendor/include/tlx/sort/parallel_mergesort.hpp +398 -0
  543. package/vendor/include/tlx/sort/strings/insertion_sort.hpp +232 -0
  544. package/vendor/include/tlx/sort/strings/multikey_quicksort.hpp +185 -0
  545. package/vendor/include/tlx/sort/strings/parallel_sample_sort.hpp +1647 -0
  546. package/vendor/include/tlx/sort/strings/radix_sort.hpp +934 -0
  547. package/vendor/include/tlx/sort/strings/sample_sort_tools.hpp +756 -0
  548. package/vendor/include/tlx/sort/strings/string_ptr.hpp +426 -0
  549. package/vendor/include/tlx/sort/strings/string_set.hpp +800 -0
  550. package/vendor/include/tlx/sort/strings.hpp +329 -0
  551. package/vendor/include/tlx/sort/strings_parallel.hpp +325 -0
  552. package/vendor/include/tlx/sort.hpp +29 -0
  553. package/vendor/include/tlx/stack_allocator.hpp +226 -0
  554. package/vendor/include/tlx/string/appendline.hpp +35 -0
  555. package/vendor/include/tlx/string/base64.hpp +87 -0
  556. package/vendor/include/tlx/string/bitdump.hpp +139 -0
  557. package/vendor/include/tlx/string/compare_icase.hpp +42 -0
  558. package/vendor/include/tlx/string/contains.hpp +36 -0
  559. package/vendor/include/tlx/string/contains_word.hpp +42 -0
  560. package/vendor/include/tlx/string/ends_with.hpp +79 -0
  561. package/vendor/include/tlx/string/equal_icase.hpp +42 -0
  562. package/vendor/include/tlx/string/erase_all.hpp +70 -0
  563. package/vendor/include/tlx/string/escape_html.hpp +34 -0
  564. package/vendor/include/tlx/string/escape_uri.hpp +34 -0
  565. package/vendor/include/tlx/string/expand_environment_variables.hpp +49 -0
  566. package/vendor/include/tlx/string/extract_between.hpp +40 -0
  567. package/vendor/include/tlx/string/format_iec_units.hpp +32 -0
  568. package/vendor/include/tlx/string/format_si_iec_units.hpp +19 -0
  569. package/vendor/include/tlx/string/format_si_units.hpp +32 -0
  570. package/vendor/include/tlx/string/hash_djb2.hpp +87 -0
  571. package/vendor/include/tlx/string/hash_sdbm.hpp +86 -0
  572. package/vendor/include/tlx/string/hexdump.hpp +154 -0
  573. package/vendor/include/tlx/string/index_of.hpp +56 -0
  574. package/vendor/include/tlx/string/join.hpp +65 -0
  575. package/vendor/include/tlx/string/join_generic.hpp +89 -0
  576. package/vendor/include/tlx/string/join_quoted.hpp +46 -0
  577. package/vendor/include/tlx/string/less_icase.hpp +64 -0
  578. package/vendor/include/tlx/string/levenshtein.hpp +193 -0
  579. package/vendor/include/tlx/string/pad.hpp +39 -0
  580. package/vendor/include/tlx/string/parse_si_iec_units.hpp +46 -0
  581. package/vendor/include/tlx/string/parse_uri.hpp +66 -0
  582. package/vendor/include/tlx/string/parse_uri_form_data.hpp +136 -0
  583. package/vendor/include/tlx/string/replace.hpp +141 -0
  584. package/vendor/include/tlx/string/split.hpp +170 -0
  585. package/vendor/include/tlx/string/split_quoted.hpp +49 -0
  586. package/vendor/include/tlx/string/split_view.hpp +218 -0
  587. package/vendor/include/tlx/string/split_words.hpp +53 -0
  588. package/vendor/include/tlx/string/ssprintf.hpp +45 -0
  589. package/vendor/include/tlx/string/ssprintf_generic.hpp +95 -0
  590. package/vendor/include/tlx/string/starts_with.hpp +44 -0
  591. package/vendor/include/tlx/string/to_lower.hpp +47 -0
  592. package/vendor/include/tlx/string/to_upper.hpp +47 -0
  593. package/vendor/include/tlx/string/trim.hpp +298 -0
  594. package/vendor/include/tlx/string/union_words.hpp +33 -0
  595. package/vendor/include/tlx/string/word_wrap.hpp +35 -0
  596. package/vendor/include/tlx/string.hpp +68 -0
  597. package/vendor/include/tlx/thread_barrier_mutex.hpp +109 -0
  598. package/vendor/include/tlx/thread_barrier_spin.hpp +127 -0
  599. package/vendor/include/tlx/thread_pool.hpp +151 -0
  600. package/vendor/include/tlx/timestamp.hpp +23 -0
  601. package/vendor/include/tlx/unused.hpp +28 -0
  602. package/vendor/include/tlx/vector_free.hpp +30 -0
  603. package/vendor/include/tlx/version.hpp +49 -0
  604. package/vendor/include/ttmath/ttmath.h +2881 -0
  605. package/vendor/include/ttmath/ttmathbig.h +6111 -0
  606. package/vendor/include/ttmath/ttmathdec.h +419 -0
  607. package/vendor/include/ttmath/ttmathint.h +1923 -0
  608. package/vendor/include/ttmath/ttmathmisc.h +250 -0
  609. package/vendor/include/ttmath/ttmathobjects.h +812 -0
  610. package/vendor/include/ttmath/ttmathparser.h +2791 -0
  611. package/vendor/include/ttmath/ttmaththreads.h +252 -0
  612. package/vendor/include/ttmath/ttmathtypes.h +707 -0
  613. package/vendor/include/ttmath/ttmathuint.h +4190 -0
  614. package/vendor/include/ttmath/ttmathuint_noasm.h +1038 -0
  615. package/vendor/include/ttmath/ttmathuint_x86.h +1620 -0
  616. package/vendor/include/ttmath/ttmathuint_x86_64.h +1177 -0
  617. package/vendor/lib/cmake/tlx/tlx-config.cmake +51 -0
  618. package/vendor/lib/cmake/tlx/tlx-targets-release.cmake +19 -0
  619. package/vendor/lib/cmake/tlx/tlx-targets.cmake +106 -0
  620. package/vendor/lib/cmake/tlx/tlx-version.cmake +11 -0
  621. package/vendor/lib/libnetworkit.dylib +0 -0
  622. package/vendor/lib/libtlx.a +0 -0
  623. package/vendor/lib/pkgconfig/networkit.pc +11 -0
  624. package/vendor/lib/pkgconfig/tlx.pc +11 -0
@@ -0,0 +1,226 @@
1
+ /*******************************************************************************
2
+ * tlx/stack_allocator.hpp
3
+ *
4
+ * An allocator derived from short_alloc by Howard Hinnant, which first takes
5
+ * memory from a stack allocated reserved area and then from malloc().
6
+ *
7
+ * from http://howardhinnant.github.io/stack_alloc.html by Howard Hinnant and
8
+ * http://codereview.stackexchange.com/questions/31528/a-working-stack-allocator
9
+ *
10
+ * Part of tlx - http://panthema.net/tlx
11
+ *
12
+ * Copyright (C) 2015-2017 Timo Bingmann <tb@panthema.net>
13
+ *
14
+ * All rights reserved. Published under the Boost Software License, Version 1.0
15
+ ******************************************************************************/
16
+
17
+ #ifndef TLX_STACK_ALLOCATOR_HEADER
18
+ #define TLX_STACK_ALLOCATOR_HEADER
19
+
20
+ #include <tlx/allocator_base.hpp>
21
+ #include <cassert>
22
+ #include <cstddef>
23
+ #include <cstdlib>
24
+ #include <type_traits>
25
+
26
+ namespace tlx {
27
+
28
+ /*!
29
+ * Storage area allocated on the stack and usable by a StackAllocator.
30
+ */
31
+ template <size_t Size>
32
+ class StackArena
33
+ {
34
+ static constexpr size_t alignment = 16;
35
+
36
+ //! union to enforce alignment of buffer area
37
+ union AlignmentHelper
38
+ {
39
+ int i;
40
+ long l;
41
+ long long ll;
42
+ long double ld;
43
+ double d;
44
+ void* p;
45
+ void (*pf)();
46
+ AlignmentHelper* ps;
47
+ };
48
+
49
+ union
50
+ {
51
+ //! stack memory area used for allocations.
52
+ char buf_[Size];
53
+ //! enforce alignment
54
+ AlignmentHelper dummy_for_alignment_;
55
+ };
56
+
57
+ //! pointer into free bytes in buf_
58
+ char* ptr_;
59
+
60
+ //! debug method to check whether ptr_ is still in buf_.
61
+ bool pointer_in_buffer(char* p) noexcept
62
+ {
63
+ return buf_ <= p && p <= buf_ + Size;
64
+ }
65
+
66
+ public:
67
+ //! default constructor: free pointer at the beginning.
68
+ StackArena() noexcept : ptr_(buf_)
69
+ {
70
+ }
71
+
72
+ //! destructor clears ptr_ for debugging.
73
+ ~StackArena()
74
+ {
75
+ ptr_ = nullptr;
76
+ }
77
+
78
+ StackArena(const StackArena&) = delete;
79
+ StackArena& operator=(const StackArena&) = delete;
80
+
81
+ char* allocate(size_t n)
82
+ {
83
+ assert(pointer_in_buffer(ptr_) &&
84
+ "StackAllocator has outlived StackArena");
85
+
86
+ // try to allocate from stack memory area
87
+ if (buf_ + Size >= ptr_ + n)
88
+ {
89
+ char* r = ptr_;
90
+ ptr_ += n;
91
+ if (n % alignment != 0)
92
+ ptr_ += alignment - n % alignment;
93
+ return r;
94
+ }
95
+ // otherwise fallback to malloc()
96
+ return static_cast<char*>(malloc(n));
97
+ }
98
+
99
+ void deallocate(char* p, size_t n) noexcept
100
+ {
101
+ assert(pointer_in_buffer(ptr_) &&
102
+ "StackAllocator has outlived StackArena");
103
+
104
+ if (pointer_in_buffer(p))
105
+ {
106
+ // free memory area (only works for a stack-ordered
107
+ // allocations/deallocations).
108
+ if (p + n == ptr_)
109
+ ptr_ = p;
110
+ }
111
+ else
112
+ {
113
+ free(p);
114
+ }
115
+ }
116
+
117
+ //! size of memory area
118
+ static constexpr size_t size() noexcept
119
+ {
120
+ return Size;
121
+ }
122
+
123
+ //! return number of bytes used in StackArena
124
+ size_t used() const noexcept
125
+ {
126
+ return static_cast<size_t>(ptr_ - buf_);
127
+ }
128
+
129
+ //! reset memory area
130
+ void reset() noexcept
131
+ {
132
+ ptr_ = buf_;
133
+ }
134
+ };
135
+
136
+ template <typename Type, size_t Size>
137
+ class StackAllocator : public AllocatorBase<Type>
138
+ {
139
+ public:
140
+ using value_type = Type;
141
+ using pointer = Type*;
142
+ using const_pointer = const Type*;
143
+ using reference = Type&;
144
+ using const_reference = const Type&;
145
+ using size_type = std::size_t;
146
+ using difference_type = std::ptrdiff_t;
147
+
148
+ //! C++11 type flag
149
+ using is_always_equal = std::false_type;
150
+
151
+ //! required rebind.
152
+ template <typename Other>
153
+ struct rebind
154
+ {
155
+ using other = StackAllocator<Other, Size>;
156
+ };
157
+
158
+ //! default constructor to invalid arena
159
+ StackAllocator() noexcept : arena_(nullptr)
160
+ {
161
+ }
162
+
163
+ //! constructor with explicit arena reference
164
+ explicit StackAllocator(StackArena<Size>& arena) noexcept : arena_(&arena)
165
+ {
166
+ }
167
+
168
+ //! constructor from another allocator with same arena size
169
+ template <typename Other>
170
+ StackAllocator(const StackAllocator<Other, Size>& other) noexcept
171
+ : arena_(other.arena_)
172
+ {
173
+ }
174
+
175
+ //! copy-constructor: default
176
+ StackAllocator(const StackAllocator&) noexcept = default;
177
+
178
+ #if !defined(_MSC_VER)
179
+ //! copy-assignment: default
180
+ StackAllocator& operator=(const StackAllocator&) noexcept = default;
181
+
182
+ //! move-constructor: default
183
+ StackAllocator(StackAllocator&&) noexcept = default;
184
+
185
+ //! move-assignment: default
186
+ StackAllocator& operator=(StackAllocator&&) noexcept = default;
187
+ #endif
188
+
189
+ //! allocate method: get memory from arena
190
+ pointer allocate(size_t n)
191
+ {
192
+ return reinterpret_cast<Type*>(arena_->allocate(n * sizeof(Type)));
193
+ }
194
+
195
+ //! deallocate method: release from arena
196
+ void deallocate(pointer p, size_t n) noexcept
197
+ {
198
+ arena_->deallocate(reinterpret_cast<char*>(p), n * sizeof(Type));
199
+ }
200
+
201
+ template <typename Other, size_t OtherSize>
202
+ bool operator==(
203
+ const StackAllocator<Other, OtherSize>& other) const noexcept
204
+ {
205
+ return Size == OtherSize && arena_ == other.arena_;
206
+ }
207
+
208
+ template <typename Other, size_t OtherSize>
209
+ bool operator!=(
210
+ const StackAllocator<Other, OtherSize>& other) const noexcept
211
+ {
212
+ return !operator==(other);
213
+ }
214
+
215
+ template <typename Other, size_t OtherSize>
216
+ friend class StackAllocator;
217
+
218
+ private:
219
+ StackArena<Size>* arena_;
220
+ };
221
+
222
+ } // namespace tlx
223
+
224
+ #endif // !TLX_STACK_ALLOCATOR_HEADER
225
+
226
+ /******************************************************************************/
@@ -0,0 +1,35 @@
1
+ /*******************************************************************************
2
+ * tlx/string/appendline.hpp
3
+ *
4
+ * Part of tlx - http://panthema.net/tlx
5
+ *
6
+ * Copyright (C) 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_STRING_APPENDLINE_HEADER
12
+ #define TLX_STRING_APPENDLINE_HEADER
13
+
14
+ #include <istream>
15
+ #include <string>
16
+
17
+ namespace tlx {
18
+
19
+ //! \addtogroup tlx_string
20
+ //! \{
21
+
22
+ /******************************************************************************/
23
+ // appendline()
24
+
25
+ //! like std::getline(istream, string, delim) except that it appends to the
26
+ //! string, possibly reusing buffer capacity.
27
+ std::istream& appendline(std::istream& is, std::string& str, char delim = '\n');
28
+
29
+ //! \}
30
+
31
+ } // namespace tlx
32
+
33
+ #endif // !TLX_STRING_APPENDLINE_HEADER
34
+
35
+ /******************************************************************************/
@@ -0,0 +1,87 @@
1
+ /*******************************************************************************
2
+ * tlx/string/base64.hpp
3
+ *
4
+ * Part of tlx - http://panthema.net/tlx
5
+ *
6
+ * Copyright (C) 2007-2024 Timo Bingmann <tb@panthema.net>
7
+ *
8
+ * All rights reserved. Published under the Boost Software License, Version 1.0
9
+ ******************************************************************************/
10
+
11
+ #ifndef TLX_STRING_BASE64_HEADER
12
+ #define TLX_STRING_BASE64_HEADER
13
+
14
+ #include <tlx/container/string_view.hpp>
15
+ #include <cstddef>
16
+ #include <string>
17
+
18
+ namespace tlx {
19
+
20
+ //! \addtogroup tlx_string
21
+ //! \{
22
+ //! \name Base64 Encoding and Decoding
23
+ //! \{
24
+
25
+ /******************************************************************************/
26
+ // Base64 Encoding and Decoding
27
+
28
+ /*!
29
+ * Encode the given binary data into base64 representation as described in RFC
30
+ * 2045 or RFC 3548. The output string contains only characters [A-Za-z0-9+/]
31
+ * and is roughly 33% longer than the input. The output string can be broken
32
+ * into lines after n characters, where n must be a multiple of 4.
33
+ *
34
+ * \param data input data to encode
35
+ * \param size size of input data to encode
36
+ * \param line_break break the output string every n characters
37
+ * \return base64 encoded string
38
+ */
39
+ std::string base64_encode(const void* data, size_t size, size_t line_break = 0);
40
+
41
+ /*!
42
+ * Encode the given binary string into base64 representation as described in RFC
43
+ * 2045 or RFC 3548. The output string contains only characters [A-Za-z0-9+/]
44
+ * and is roughly 33% longer than the input. The output string can be broken
45
+ * into lines after n characters, where n must be a multiple of 4.
46
+ *
47
+ * \param str input string to encode
48
+ * \param line_break break the output string every n characters
49
+ * \return base64 encoded string
50
+ */
51
+ std::string base64_encode(tlx::string_view str, size_t line_break = 0);
52
+
53
+ /*!
54
+ * Decode a string in base64 representation as described in RFC 2045 or RFC 3548
55
+ * and return the original data. If a non-whitespace invalid base64 character is
56
+ * encountered _and_ the parameter "strict" is true, then this function will
57
+ * throw a std::runtime_error. If "strict" is false, the character is silently
58
+ * ignored.
59
+ *
60
+ * \param data input data to decode
61
+ * \param size size of input data to decode
62
+ * \param strict throw exception on invalid character
63
+ * \return decoded binary data
64
+ */
65
+ std::string base64_decode(const void* data, size_t size, bool strict = true);
66
+
67
+ /*!
68
+ * Decode a string in base64 representation as described in RFC 2045 or RFC 3548
69
+ * and return the original data. If a non-whitespace invalid base64 character is
70
+ * encountered _and_ the parameter "strict" is true, then this function will
71
+ * throw a std::runtime_error. If "strict" is false, the character is silently
72
+ * ignored.
73
+ *
74
+ * \param str input string to encode
75
+ * \param strict throw exception on invalid character
76
+ * \return decoded binary data
77
+ */
78
+ std::string base64_decode(tlx::string_view str, bool strict = true);
79
+
80
+ //! \}
81
+ //! \}
82
+
83
+ } // namespace tlx
84
+
85
+ #endif // !TLX_STRING_BASE64_HEADER
86
+
87
+ /******************************************************************************/
@@ -0,0 +1,139 @@
1
+ /*******************************************************************************
2
+ * tlx/string/bitdump.hpp
3
+ *
4
+ * Part of tlx - http://panthema.net/tlx
5
+ *
6
+ * Copyright (C) 2019-2024 Timo Bingmann <tb@panthema.net>
7
+ *
8
+ * All rights reserved. Published under the Boost Software License, Version 1.0
9
+ ******************************************************************************/
10
+
11
+ #ifndef TLX_STRING_BITDUMP_HEADER
12
+ #define TLX_STRING_BITDUMP_HEADER
13
+
14
+ #include <tlx/container/string_view.hpp>
15
+ #include <cstddef>
16
+ #include <string>
17
+
18
+ namespace tlx {
19
+
20
+ //! \addtogroup tlx_string
21
+ //! \{
22
+ //! \name Bitdump Methods
23
+ //! \{
24
+
25
+ /******************************************************************************/
26
+ // Bitdump Methods
27
+
28
+ /*!
29
+ * Dump a (binary) string of 8-bit bytes as a sequence of '0' and '1'
30
+ * characters, with the most significant bits (msb) first. Each 8-bit byte is
31
+ * represented with a block of '0'/'1's separated by spaces.
32
+ *
33
+ * \param data binary data to output as bits
34
+ * \param size length of binary data
35
+ * \return string of binary digits
36
+ */
37
+ std::string bitdump_8_msb(const void* const data, size_t size);
38
+
39
+ /*!
40
+ * Dump a (binary) string of 8-bit bytes as a sequence of '0' and '1'
41
+ * characters, with the most significant bits (msb) first. Each 8-bit byte is
42
+ * represented with a block of '0'/'1's separated by spaces.
43
+ *
44
+ * \param str binary data to output as bits
45
+ * \return string of binary digits
46
+ */
47
+ std::string bitdump_8_msb(tlx::string_view str);
48
+
49
+ /*!
50
+ * Dump a (binary) item of 8-bit bytes as a sequence of '0' and '1' characters,
51
+ * with the most significant bits (msb) first. Each 8-bit byte is represented
52
+ * with a block of '0'/'1's separated by spaces.
53
+ *
54
+ * \param t binary data to output as bits
55
+ * \return string of binary digits
56
+ */
57
+ template <typename Type>
58
+ std::string bitdump_8_msb_type(const Type& t)
59
+ {
60
+ return bitdump_8_msb(&t, sizeof(t));
61
+ }
62
+
63
+ /*----------------------------------------------------------------------------*/
64
+
65
+ //! deprecated method: unclear naming and documentation.
66
+ std::string bitdump_le8(const void* const data, size_t size);
67
+
68
+ //! deprecated method: unclear naming and documentation.
69
+ std::string bitdump_le8(tlx::string_view str);
70
+
71
+ //! deprecated method: unclear naming and documentation.
72
+ template <typename Type>
73
+ std::string bitdump_le8_type(const Type& t)
74
+ {
75
+ return bitdump_8_msb_type(t);
76
+ }
77
+
78
+ /*----------------------------------------------------------------------------*/
79
+
80
+ /*!
81
+ * Dump a (binary) string of 8-bit bytes as a sequence of '0' and '1'
82
+ * characters, with the least significant bits (lsb) first. Each 8-bit byte is
83
+ * represented with a block of '0'/'1's separated by spaces.
84
+ *
85
+ * \param data binary data to output as bits
86
+ * \param size length of binary data
87
+ * \return string of binary digits
88
+ */
89
+ std::string bitdump_8_lsb(const void* const data, size_t size);
90
+
91
+ /*!
92
+ * Dump a (binary) string of 8-bit bytes as a sequence of '0' and '1'
93
+ * characters, with the least significant bits (lsb) first. Each 8-bit byte is
94
+ * represented with a block of '0'/'1's separated by spaces.
95
+ *
96
+ * \param str binary data to output as bits
97
+ * \return string of binary digits
98
+ */
99
+ std::string bitdump_8_lsb(tlx::string_view str);
100
+
101
+ /*!
102
+ * Dump a (binary) item of 8-bit bytes as a sequence of '0' and '1' characters,
103
+ * with the least significant bits (lsb) first. Each 8-bit byte is represented
104
+ * with a block of '0'/'1's separated by spaces.
105
+ *
106
+ * \param t binary data to output as bits
107
+ * \return string of binary digits
108
+ */
109
+ template <typename Type>
110
+ std::string bitdump_8_lsb_type(const Type& t)
111
+ {
112
+ return bitdump_8_lsb(&t, sizeof(t));
113
+ }
114
+
115
+ /*----------------------------------------------------------------------------*/
116
+
117
+ //! deprecated method: unclear naming and documentation.
118
+ std::string bitdump_be8(const void* const data, size_t size);
119
+
120
+ //! deprecated method: unclear naming and documentation.
121
+ std::string bitdump_be8(tlx::string_view str);
122
+
123
+ //! deprecated method: unclear naming and documentation.
124
+ template <typename Type>
125
+ std::string bitdump_be8_type(const Type& t)
126
+ {
127
+ return bitdump_8_lsb_type(t);
128
+ }
129
+
130
+ /*----------------------------------------------------------------------------*/
131
+
132
+ //! \}
133
+ //! \}
134
+
135
+ } // namespace tlx
136
+
137
+ #endif // !TLX_STRING_BITDUMP_HEADER
138
+
139
+ /******************************************************************************/
@@ -0,0 +1,42 @@
1
+ /*******************************************************************************
2
+ * tlx/string/compare_icase.hpp
3
+ *
4
+ * Part of tlx - http://panthema.net/tlx
5
+ *
6
+ * Copyright (C) 2007-2024 Timo Bingmann <tb@panthema.net>
7
+ *
8
+ * All rights reserved. Published under the Boost Software License, Version 1.0
9
+ ******************************************************************************/
10
+
11
+ #ifndef TLX_STRING_COMPARE_ICASE_HEADER
12
+ #define TLX_STRING_COMPARE_ICASE_HEADER
13
+
14
+ #include <tlx/container/string_view.hpp>
15
+
16
+ namespace tlx {
17
+
18
+ //! \addtogroup tlx_string
19
+ //! \{
20
+
21
+ /******************************************************************************/
22
+ // compare_icase()
23
+
24
+ //! returns +1/0/-1 like strcmp(a, b) but without regard for letter case
25
+ int compare_icase(const char* a, const char* b);
26
+
27
+ //! returns +1/0/-1 like strcmp(a, b) but without regard for letter case
28
+ int compare_icase(const char* a, tlx::string_view b);
29
+
30
+ //! returns +1/0/-1 like strcmp(a, b) but without regard for letter case
31
+ int compare_icase(tlx::string_view a, const char* b);
32
+
33
+ //! returns +1/0/-1 like strcmp(a, b) but without regard for letter case
34
+ int compare_icase(tlx::string_view a, tlx::string_view b);
35
+
36
+ //! \}
37
+
38
+ } // namespace tlx
39
+
40
+ #endif // !TLX_STRING_COMPARE_ICASE_HEADER
41
+
42
+ /******************************************************************************/
@@ -0,0 +1,36 @@
1
+ /*******************************************************************************
2
+ * tlx/string/contains.hpp
3
+ *
4
+ * Part of tlx - http://panthema.net/tlx
5
+ *
6
+ * Copyright (C) 2007-2024 Timo Bingmann <tb@panthema.net>
7
+ *
8
+ * All rights reserved. Published under the Boost Software License, Version 1.0
9
+ ******************************************************************************/
10
+
11
+ #ifndef TLX_STRING_CONTAINS_HEADER
12
+ #define TLX_STRING_CONTAINS_HEADER
13
+
14
+ #include <tlx/container/string_view.hpp>
15
+
16
+ namespace tlx {
17
+
18
+ //! \addtogroup tlx_string
19
+ //! \{
20
+
21
+ /******************************************************************************/
22
+ // contains()
23
+
24
+ //! Tests of string contains pattern
25
+ bool contains(tlx::string_view str, tlx::string_view pattern);
26
+
27
+ //! Tests of string contains character
28
+ bool contains(tlx::string_view str, const char ch);
29
+
30
+ //! \}
31
+
32
+ } // namespace tlx
33
+
34
+ #endif // !TLX_STRING_CONTAINS_HEADER
35
+
36
+ /******************************************************************************/
@@ -0,0 +1,42 @@
1
+ /*******************************************************************************
2
+ * tlx/string/contains_word.hpp
3
+ *
4
+ * Part of tlx - http://panthema.net/tlx
5
+ *
6
+ * Copyright (C) 2016-2024 Timo Bingmann <tb@panthema.net>
7
+ *
8
+ * All rights reserved. Published under the Boost Software License, Version 1.0
9
+ ******************************************************************************/
10
+
11
+ #ifndef TLX_STRING_CONTAINS_WORD_HEADER
12
+ #define TLX_STRING_CONTAINS_WORD_HEADER
13
+
14
+ #include <tlx/container/string_view.hpp>
15
+
16
+ namespace tlx {
17
+
18
+ //! \addtogroup tlx_string
19
+ //! \{
20
+
21
+ /******************************************************************************/
22
+ // contains_word()
23
+
24
+ /*!
25
+ * Search the given string for a whitespace-delimited word. It works as if the
26
+ * str was split_words() and the resulting vector checked for a given
27
+ * word. However this function does not create a vector, it scans the string
28
+ * directly. Whitespace is space, tab, newline or carriage-return.
29
+ *
30
+ * \param str whitespace-delimited string to check
31
+ * \param word word to find
32
+ * \return true if the word was found
33
+ */
34
+ bool contains_word(tlx::string_view str, tlx::string_view word);
35
+
36
+ //! \}
37
+
38
+ } // namespace tlx
39
+
40
+ #endif // !TLX_STRING_CONTAINS_WORD_HEADER
41
+
42
+ /******************************************************************************/
@@ -0,0 +1,79 @@
1
+ /*******************************************************************************
2
+ * tlx/string/ends_with.hpp
3
+ *
4
+ * Part of tlx - http://panthema.net/tlx
5
+ *
6
+ * Copyright (C) 2007-2024 Timo Bingmann <tb@panthema.net>
7
+ *
8
+ * All rights reserved. Published under the Boost Software License, Version 1.0
9
+ ******************************************************************************/
10
+
11
+ #ifndef TLX_STRING_ENDS_WITH_HEADER
12
+ #define TLX_STRING_ENDS_WITH_HEADER
13
+
14
+ #include <tlx/container/string_view.hpp>
15
+
16
+ namespace tlx {
17
+
18
+ //! \addtogroup tlx_string
19
+ //! \{
20
+
21
+ /******************************************************************************/
22
+ // ends_with()
23
+
24
+ /*!
25
+ * Checks if the given match string is located at the end of this string.
26
+ */
27
+ bool ends_with(const char* str, const char* match);
28
+
29
+ /*!
30
+ * Checks if the given match string is located at the end of this string.
31
+ */
32
+ bool ends_with(const char* str, tlx::string_view match);
33
+
34
+ /*!
35
+ * Checks if the given match string is located at the end of this string.
36
+ */
37
+ bool ends_with(tlx::string_view str, const char* match);
38
+
39
+ /*!
40
+ * Checks if the given match string is located at the end of this string.
41
+ */
42
+ bool ends_with(tlx::string_view str, tlx::string_view match);
43
+
44
+ /******************************************************************************/
45
+ // ends_with_icase()
46
+
47
+ /*!
48
+ * Checks if the given match string is located at the end of this
49
+ * string. Compares the characters case-insensitively.
50
+ */
51
+ bool ends_with_icase(const char* str, const char* match);
52
+
53
+ /*!
54
+ * Checks if the given match string is located at the end of this
55
+ * string. Compares the characters case-insensitively.
56
+ */
57
+ bool ends_with_icase(const char* str, tlx::string_view match);
58
+
59
+ /*!
60
+ * Checks if the given match string is located at the end of this
61
+ * string. Compares the characters case-insensitively.
62
+ */
63
+ bool ends_with_icase(tlx::string_view str, const char* match);
64
+
65
+ /*!
66
+ * Checks if the given match string is located at the end of this
67
+ * string. Compares the characters case-insensitively.
68
+ */
69
+ bool ends_with_icase(tlx::string_view str, tlx::string_view match);
70
+
71
+ /******************************************************************************/
72
+
73
+ //! \}
74
+
75
+ } // namespace tlx
76
+
77
+ #endif // !TLX_STRING_ENDS_WITH_HEADER
78
+
79
+ /******************************************************************************/