@ladybugmem/icebug 0.1.0 → 0.1.1
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.
- package/binding.gyp +32 -10
- package/lib/index.js +23 -11
- package/package.json +8 -13
- package/prebuilds/darwin-arm64/icebug.node +0 -0
- package/{vendor/lib → prebuilds/darwin-arm64}/libnetworkit.dylib +0 -0
- package/prebuilds/linux-x64/icebug.node +0 -0
- package/prebuilds/linux-x64/libnetworkit.so +0 -0
- package/scripts/download-icebug.sh +92 -0
- package/build/Release/.deps/Release/icebug.node.d +0 -1
- package/build/Release/.deps/Release/obj.target/icebug/src/addon.o.d +0 -291
- package/build/Release/icebug.node +0 -0
- package/build/Release/obj.target/icebug/src/addon.o +0 -0
- package/vendor/include/networkit/GlobalState.hpp +0 -86
- package/vendor/include/networkit/Globals.hpp +0 -41
- package/vendor/include/networkit/algebraic/AlgebraicGlobals.hpp +0 -27
- package/vendor/include/networkit/algebraic/CSRGeneralMatrix.hpp +0 -1292
- package/vendor/include/networkit/algebraic/CSRMatrix.hpp +0 -11
- package/vendor/include/networkit/algebraic/DenseMatrix.hpp +0 -537
- package/vendor/include/networkit/algebraic/DynamicMatrix.hpp +0 -514
- package/vendor/include/networkit/algebraic/GraphBLAS.hpp +0 -323
- package/vendor/include/networkit/algebraic/MatrixTools.hpp +0 -156
- package/vendor/include/networkit/algebraic/Semirings.hpp +0 -171
- package/vendor/include/networkit/algebraic/SparseAccumulator.hpp +0 -111
- package/vendor/include/networkit/algebraic/Vector.hpp +0 -371
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicBFS.hpp +0 -72
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicBellmanFord.hpp +0 -88
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicMatchingCoarsening.hpp +0 -96
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicPageRank.hpp +0 -145
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicSpanningEdgeCentrality.hpp +0 -122
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicTriangleCounting.hpp +0 -76
- package/vendor/include/networkit/auxiliary/AlignedAllocator.hpp +0 -113
- package/vendor/include/networkit/auxiliary/ArrayTools.hpp +0 -85
- package/vendor/include/networkit/auxiliary/BloomFilter.hpp +0 -70
- package/vendor/include/networkit/auxiliary/BucketPQ.hpp +0 -142
- package/vendor/include/networkit/auxiliary/Enforce.hpp +0 -117
- package/vendor/include/networkit/auxiliary/FunctionTraits.hpp +0 -74
- package/vendor/include/networkit/auxiliary/HashUtils.hpp +0 -28
- package/vendor/include/networkit/auxiliary/IncrementalUniformRandomSelector.hpp +0 -52
- package/vendor/include/networkit/auxiliary/Log.hpp +0 -119
- package/vendor/include/networkit/auxiliary/MissingMath.hpp +0 -48
- package/vendor/include/networkit/auxiliary/Multiprecision.hpp +0 -17
- package/vendor/include/networkit/auxiliary/NumberParsing.hpp +0 -307
- package/vendor/include/networkit/auxiliary/NumericTools.hpp +0 -57
- package/vendor/include/networkit/auxiliary/Parallel.hpp +0 -56
- package/vendor/include/networkit/auxiliary/Parallelism.hpp +0 -33
- package/vendor/include/networkit/auxiliary/PrioQueue.hpp +0 -252
- package/vendor/include/networkit/auxiliary/Random.hpp +0 -122
- package/vendor/include/networkit/auxiliary/SetIntersector.hpp +0 -72
- package/vendor/include/networkit/auxiliary/SignalHandling.hpp +0 -39
- package/vendor/include/networkit/auxiliary/SortedList.hpp +0 -128
- package/vendor/include/networkit/auxiliary/SparseVector.hpp +0 -215
- package/vendor/include/networkit/auxiliary/SpinLock.hpp +0 -23
- package/vendor/include/networkit/auxiliary/StringBuilder.hpp +0 -322
- package/vendor/include/networkit/auxiliary/StringTools.hpp +0 -76
- package/vendor/include/networkit/auxiliary/TemplateUtils.hpp +0 -76
- package/vendor/include/networkit/auxiliary/Timer.hpp +0 -145
- package/vendor/include/networkit/auxiliary/VectorComparator.hpp +0 -32
- package/vendor/include/networkit/base/Algorithm.hpp +0 -41
- package/vendor/include/networkit/base/DynAlgorithm.hpp +0 -31
- package/vendor/include/networkit/centrality/ApproxBetweenness.hpp +0 -62
- package/vendor/include/networkit/centrality/ApproxCloseness.hpp +0 -136
- package/vendor/include/networkit/centrality/ApproxElectricalCloseness.hpp +0 -156
- package/vendor/include/networkit/centrality/ApproxGroupBetweenness.hpp +0 -124
- package/vendor/include/networkit/centrality/ApproxSpanningEdge.hpp +0 -84
- package/vendor/include/networkit/centrality/Betweenness.hpp +0 -47
- package/vendor/include/networkit/centrality/Centrality.hpp +0 -98
- package/vendor/include/networkit/centrality/Closeness.hpp +0 -107
- package/vendor/include/networkit/centrality/ComplexPaths.hpp +0 -113
- package/vendor/include/networkit/centrality/CoreDecomposition.hpp +0 -161
- package/vendor/include/networkit/centrality/DegreeCentrality.hpp +0 -55
- package/vendor/include/networkit/centrality/DynApproxBetweenness.hpp +0 -95
- package/vendor/include/networkit/centrality/DynBetweenness.hpp +0 -99
- package/vendor/include/networkit/centrality/DynBetweennessOneNode.hpp +0 -98
- package/vendor/include/networkit/centrality/DynKatzCentrality.hpp +0 -115
- package/vendor/include/networkit/centrality/DynTopHarmonicCloseness.hpp +0 -223
- package/vendor/include/networkit/centrality/EigenvectorCentrality.hpp +0 -41
- package/vendor/include/networkit/centrality/EstimateBetweenness.hpp +0 -51
- package/vendor/include/networkit/centrality/ForestCentrality.hpp +0 -112
- package/vendor/include/networkit/centrality/GedWalk.hpp +0 -225
- package/vendor/include/networkit/centrality/GroupCloseness.hpp +0 -115
- package/vendor/include/networkit/centrality/GroupClosenessGrowShrink.hpp +0 -78
- package/vendor/include/networkit/centrality/GroupClosenessLocalSearch.hpp +0 -77
- package/vendor/include/networkit/centrality/GroupClosenessLocalSwaps.hpp +0 -106
- package/vendor/include/networkit/centrality/GroupDegree.hpp +0 -155
- package/vendor/include/networkit/centrality/GroupHarmonicCloseness.hpp +0 -83
- package/vendor/include/networkit/centrality/HarmonicCloseness.hpp +0 -48
- package/vendor/include/networkit/centrality/KPathCentrality.hpp +0 -52
- package/vendor/include/networkit/centrality/KadabraBetweenness.hpp +0 -242
- package/vendor/include/networkit/centrality/KatzCentrality.hpp +0 -62
- package/vendor/include/networkit/centrality/LaplacianCentrality.hpp +0 -44
- package/vendor/include/networkit/centrality/LocalClusteringCoefficient.hpp +0 -60
- package/vendor/include/networkit/centrality/LocalPartitionCoverage.hpp +0 -43
- package/vendor/include/networkit/centrality/LocalSquareClusteringCoefficient.hpp +0 -42
- package/vendor/include/networkit/centrality/PageRank.hpp +0 -101
- package/vendor/include/networkit/centrality/PermanenceCentrality.hpp +0 -48
- package/vendor/include/networkit/centrality/Sfigality.hpp +0 -45
- package/vendor/include/networkit/centrality/SpanningEdgeCentrality.hpp +0 -86
- package/vendor/include/networkit/centrality/TopCloseness.hpp +0 -136
- package/vendor/include/networkit/centrality/TopHarmonicCloseness.hpp +0 -151
- package/vendor/include/networkit/clique/MaximalCliques.hpp +0 -83
- package/vendor/include/networkit/coarsening/ClusteringProjector.hpp +0 -59
- package/vendor/include/networkit/coarsening/CoarsenedGraphView.hpp +0 -156
- package/vendor/include/networkit/coarsening/GraphCoarsening.hpp +0 -57
- package/vendor/include/networkit/coarsening/MatchingCoarsening.hpp +0 -43
- package/vendor/include/networkit/coarsening/ParallelPartitionCoarsening.hpp +0 -33
- package/vendor/include/networkit/coarsening/ParallelPartitionCoarseningView.hpp +0 -62
- package/vendor/include/networkit/community/AdjustedRandMeasure.hpp +0 -31
- package/vendor/include/networkit/community/ClusteringGenerator.hpp +0 -75
- package/vendor/include/networkit/community/CommunityDetectionAlgorithm.hpp +0 -58
- package/vendor/include/networkit/community/Conductance.hpp +0 -32
- package/vendor/include/networkit/community/CoverF1Similarity.hpp +0 -53
- package/vendor/include/networkit/community/CoverHubDominance.hpp +0 -38
- package/vendor/include/networkit/community/Coverage.hpp +0 -25
- package/vendor/include/networkit/community/CutClustering.hpp +0 -62
- package/vendor/include/networkit/community/DissimilarityMeasure.hpp +0 -31
- package/vendor/include/networkit/community/DynamicNMIDistance.hpp +0 -44
- package/vendor/include/networkit/community/EdgeCut.hpp +0 -24
- package/vendor/include/networkit/community/GraphClusteringTools.hpp +0 -103
- package/vendor/include/networkit/community/GraphStructuralRandMeasure.hpp +0 -28
- package/vendor/include/networkit/community/HubDominance.hpp +0 -46
- package/vendor/include/networkit/community/IntrapartitionDensity.hpp +0 -44
- package/vendor/include/networkit/community/IsolatedInterpartitionConductance.hpp +0 -40
- package/vendor/include/networkit/community/IsolatedInterpartitionExpansion.hpp +0 -40
- package/vendor/include/networkit/community/JaccardMeasure.hpp +0 -25
- package/vendor/include/networkit/community/LFM.hpp +0 -49
- package/vendor/include/networkit/community/LPDegreeOrdered.hpp +0 -48
- package/vendor/include/networkit/community/LocalCommunityEvaluation.hpp +0 -100
- package/vendor/include/networkit/community/LocalCoverEvaluation.hpp +0 -31
- package/vendor/include/networkit/community/LocalPartitionEvaluation.hpp +0 -31
- package/vendor/include/networkit/community/LouvainMapEquation.hpp +0 -135
- package/vendor/include/networkit/community/Modularity.hpp +0 -54
- package/vendor/include/networkit/community/NMIDistance.hpp +0 -28
- package/vendor/include/networkit/community/NodeStructuralRandMeasure.hpp +0 -27
- package/vendor/include/networkit/community/OverlappingCommunityDetectionAlgorithm.hpp +0 -51
- package/vendor/include/networkit/community/OverlappingNMIDistance.hpp +0 -175
- package/vendor/include/networkit/community/PLM.hpp +0 -89
- package/vendor/include/networkit/community/PLP.hpp +0 -83
- package/vendor/include/networkit/community/ParallelAgglomerativeClusterer.hpp +0 -37
- package/vendor/include/networkit/community/ParallelLeiden.hpp +0 -96
- package/vendor/include/networkit/community/ParallelLeidenView.hpp +0 -138
- package/vendor/include/networkit/community/PartitionFragmentation.hpp +0 -30
- package/vendor/include/networkit/community/PartitionHubDominance.hpp +0 -37
- package/vendor/include/networkit/community/PartitionIntersection.hpp +0 -25
- package/vendor/include/networkit/community/QualityMeasure.hpp +0 -27
- package/vendor/include/networkit/community/SampledGraphStructuralRandMeasure.hpp +0 -40
- package/vendor/include/networkit/community/SampledNodeStructuralRandMeasure.hpp +0 -40
- package/vendor/include/networkit/community/StablePartitionNodes.hpp +0 -48
- package/vendor/include/networkit/components/BiconnectedComponents.hpp +0 -116
- package/vendor/include/networkit/components/ComponentDecomposition.hpp +0 -72
- package/vendor/include/networkit/components/ConnectedComponents.hpp +0 -55
- package/vendor/include/networkit/components/DynConnectedComponents.hpp +0 -71
- package/vendor/include/networkit/components/DynWeaklyConnectedComponents.hpp +0 -73
- package/vendor/include/networkit/components/ParallelConnectedComponents.hpp +0 -44
- package/vendor/include/networkit/components/RandomSpanningForest.hpp +0 -36
- package/vendor/include/networkit/components/StronglyConnectedComponents.hpp +0 -50
- package/vendor/include/networkit/components/WeaklyConnectedComponents.hpp +0 -59
- package/vendor/include/networkit/correlation/Assortativity.hpp +0 -64
- package/vendor/include/networkit/distance/APSP.hpp +0 -70
- package/vendor/include/networkit/distance/AStar.hpp +0 -68
- package/vendor/include/networkit/distance/AStarGeneral.hpp +0 -110
- package/vendor/include/networkit/distance/AdamicAdarDistance.hpp +0 -52
- package/vendor/include/networkit/distance/AffectedNodes.hpp +0 -130
- package/vendor/include/networkit/distance/AlgebraicDistance.hpp +0 -63
- package/vendor/include/networkit/distance/BFS.hpp +0 -43
- package/vendor/include/networkit/distance/BidirectionalBFS.hpp +0 -51
- package/vendor/include/networkit/distance/BidirectionalDijkstra.hpp +0 -69
- package/vendor/include/networkit/distance/CommuteTimeDistance.hpp +0 -89
- package/vendor/include/networkit/distance/Diameter.hpp +0 -97
- package/vendor/include/networkit/distance/Dijkstra.hpp +0 -50
- package/vendor/include/networkit/distance/DynAPSP.hpp +0 -67
- package/vendor/include/networkit/distance/DynBFS.hpp +0 -56
- package/vendor/include/networkit/distance/DynDijkstra.hpp +0 -57
- package/vendor/include/networkit/distance/DynPrunedLandmarkLabeling.hpp +0 -67
- package/vendor/include/networkit/distance/DynSSSP.hpp +0 -87
- package/vendor/include/networkit/distance/Eccentricity.hpp +0 -32
- package/vendor/include/networkit/distance/EffectiveDiameter.hpp +0 -47
- package/vendor/include/networkit/distance/EffectiveDiameterApproximation.hpp +0 -57
- package/vendor/include/networkit/distance/FloydWarshall.hpp +0 -93
- package/vendor/include/networkit/distance/GraphDistance.hpp +0 -49
- package/vendor/include/networkit/distance/HopPlotApproximation.hpp +0 -62
- package/vendor/include/networkit/distance/IncompleteDijkstra.hpp +0 -66
- package/vendor/include/networkit/distance/IncompleteSSSP.hpp +0 -41
- package/vendor/include/networkit/distance/JaccardDistance.hpp +0 -57
- package/vendor/include/networkit/distance/MultiTargetBFS.hpp +0 -32
- package/vendor/include/networkit/distance/MultiTargetDijkstra.hpp +0 -40
- package/vendor/include/networkit/distance/NeighborhoodFunction.hpp +0 -47
- package/vendor/include/networkit/distance/NeighborhoodFunctionApproximation.hpp +0 -56
- package/vendor/include/networkit/distance/NeighborhoodFunctionHeuristic.hpp +0 -56
- package/vendor/include/networkit/distance/NodeDistance.hpp +0 -54
- package/vendor/include/networkit/distance/PrunedLandmarkLabeling.hpp +0 -76
- package/vendor/include/networkit/distance/ReverseBFS.hpp +0 -46
- package/vendor/include/networkit/distance/SPSP.hpp +0 -143
- package/vendor/include/networkit/distance/SSSP.hpp +0 -216
- package/vendor/include/networkit/distance/STSP.hpp +0 -193
- package/vendor/include/networkit/distance/Volume.hpp +0 -66
- package/vendor/include/networkit/dynamics/DGSStreamParser.hpp +0 -40
- package/vendor/include/networkit/dynamics/DGSWriter.hpp +0 -30
- package/vendor/include/networkit/dynamics/GraphDifference.hpp +0 -110
- package/vendor/include/networkit/dynamics/GraphEvent.hpp +0 -55
- package/vendor/include/networkit/dynamics/GraphEventHandler.hpp +0 -39
- package/vendor/include/networkit/dynamics/GraphEventProxy.hpp +0 -55
- package/vendor/include/networkit/dynamics/GraphUpdater.hpp +0 -38
- package/vendor/include/networkit/edgescores/ChibaNishizekiQuadrangleEdgeScore.hpp +0 -26
- package/vendor/include/networkit/edgescores/ChibaNishizekiTriangleEdgeScore.hpp +0 -33
- package/vendor/include/networkit/edgescores/EdgeScore.hpp +0 -50
- package/vendor/include/networkit/edgescores/EdgeScoreAsWeight.hpp +0 -33
- package/vendor/include/networkit/edgescores/EdgeScoreBlender.hpp +0 -33
- package/vendor/include/networkit/edgescores/EdgeScoreLinearizer.hpp +0 -32
- package/vendor/include/networkit/edgescores/EdgeScoreNormalizer.hpp +0 -35
- package/vendor/include/networkit/edgescores/GeometricMeanScore.hpp +0 -29
- package/vendor/include/networkit/edgescores/PrefixJaccardScore.hpp +0 -23
- package/vendor/include/networkit/edgescores/TriangleEdgeScore.hpp +0 -39
- package/vendor/include/networkit/embedding/Node2Vec.hpp +0 -83
- package/vendor/include/networkit/flow/EdmondsKarp.hpp +0 -112
- package/vendor/include/networkit/generators/BarabasiAlbertGenerator.hpp +0 -87
- package/vendor/include/networkit/generators/ChungLuGenerator.hpp +0 -46
- package/vendor/include/networkit/generators/ChungLuGeneratorAlamEtAl.hpp +0 -63
- package/vendor/include/networkit/generators/ClusteredRandomGraphGenerator.hpp +0 -56
- package/vendor/include/networkit/generators/ConfigurationModel.hpp +0 -36
- package/vendor/include/networkit/generators/DorogovtsevMendesGenerator.hpp +0 -33
- package/vendor/include/networkit/generators/DynamicBarabasiAlbertGenerator.hpp +0 -33
- package/vendor/include/networkit/generators/DynamicDGSParser.hpp +0 -51
- package/vendor/include/networkit/generators/DynamicDorogovtsevMendesGenerator.hpp +0 -34
- package/vendor/include/networkit/generators/DynamicForestFireGenerator.hpp +0 -55
- package/vendor/include/networkit/generators/DynamicGraphGenerator.hpp +0 -40
- package/vendor/include/networkit/generators/DynamicGraphSource.hpp +0 -79
- package/vendor/include/networkit/generators/DynamicHyperbolicGenerator.hpp +0 -143
- package/vendor/include/networkit/generators/DynamicPathGenerator.hpp +0 -26
- package/vendor/include/networkit/generators/DynamicPubWebGenerator.hpp +0 -54
- package/vendor/include/networkit/generators/EdgeSwitchingMarkovChainGenerator.hpp +0 -65
- package/vendor/include/networkit/generators/ErdosRenyiEnumerator.hpp +0 -318
- package/vendor/include/networkit/generators/ErdosRenyiGenerator.hpp +0 -56
- package/vendor/include/networkit/generators/HavelHakimiGenerator.hpp +0 -48
- package/vendor/include/networkit/generators/HyperbolicGenerator.hpp +0 -236
- package/vendor/include/networkit/generators/LFRGenerator.hpp +0 -175
- package/vendor/include/networkit/generators/MocnikGenerator.hpp +0 -147
- package/vendor/include/networkit/generators/MocnikGeneratorBasic.hpp +0 -58
- package/vendor/include/networkit/generators/PowerlawDegreeSequence.hpp +0 -128
- package/vendor/include/networkit/generators/PubWebGenerator.hpp +0 -94
- package/vendor/include/networkit/generators/RegularRingLatticeGenerator.hpp +0 -37
- package/vendor/include/networkit/generators/RmatGenerator.hpp +0 -67
- package/vendor/include/networkit/generators/StaticDegreeSequenceGenerator.hpp +0 -42
- package/vendor/include/networkit/generators/StaticGraphGenerator.hpp +0 -30
- package/vendor/include/networkit/generators/StochasticBlockmodel.hpp +0 -41
- package/vendor/include/networkit/generators/WattsStrogatzGenerator.hpp +0 -43
- package/vendor/include/networkit/generators/quadtree/QuadNode.hpp +0 -857
- package/vendor/include/networkit/generators/quadtree/QuadNodeCartesianEuclid.hpp +0 -587
- package/vendor/include/networkit/generators/quadtree/QuadNodePolarEuclid.hpp +0 -726
- package/vendor/include/networkit/generators/quadtree/Quadtree.hpp +0 -232
- package/vendor/include/networkit/generators/quadtree/QuadtreeCartesianEuclid.hpp +0 -149
- package/vendor/include/networkit/generators/quadtree/QuadtreePolarEuclid.hpp +0 -143
- package/vendor/include/networkit/geometric/HyperbolicSpace.hpp +0 -248
- package/vendor/include/networkit/geometric/Point2DWithIndex.hpp +0 -145
- package/vendor/include/networkit/global/ClusteringCoefficient.hpp +0 -42
- package/vendor/include/networkit/global/GlobalClusteringCoefficient.hpp +0 -24
- package/vendor/include/networkit/graph/Attributes.hpp +0 -568
- package/vendor/include/networkit/graph/BFS.hpp +0 -111
- package/vendor/include/networkit/graph/DFS.hpp +0 -71
- package/vendor/include/networkit/graph/Dijkstra.hpp +0 -83
- package/vendor/include/networkit/graph/EdgeIterators.hpp +0 -171
- package/vendor/include/networkit/graph/Graph.hpp +0 -2083
- package/vendor/include/networkit/graph/GraphBuilder.hpp +0 -289
- package/vendor/include/networkit/graph/GraphR.hpp +0 -133
- package/vendor/include/networkit/graph/GraphTools.hpp +0 -589
- package/vendor/include/networkit/graph/GraphW.hpp +0 -1236
- package/vendor/include/networkit/graph/KruskalMSF.hpp +0 -50
- package/vendor/include/networkit/graph/NeighborIterators.hpp +0 -163
- package/vendor/include/networkit/graph/NodeIterators.hpp +0 -127
- package/vendor/include/networkit/graph/PrimMSF.hpp +0 -66
- package/vendor/include/networkit/graph/RandomMaximumSpanningForest.hpp +0 -133
- package/vendor/include/networkit/graph/SpanningForest.hpp +0 -41
- package/vendor/include/networkit/graph/TopologicalSort.hpp +0 -87
- package/vendor/include/networkit/graph/UnionMaximumSpanningForest.hpp +0 -126
- package/vendor/include/networkit/graph/test/GraphBuilderBenchmark.hpp +0 -68
- package/vendor/include/networkit/independentset/IndependentSetFinder.hpp +0 -44
- package/vendor/include/networkit/independentset/Luby.hpp +0 -27
- package/vendor/include/networkit/io/BinaryEdgeListPartitionReader.hpp +0 -45
- package/vendor/include/networkit/io/BinaryEdgeListPartitionWriter.hpp +0 -47
- package/vendor/include/networkit/io/BinaryPartitionReader.hpp +0 -41
- package/vendor/include/networkit/io/BinaryPartitionWriter.hpp +0 -44
- package/vendor/include/networkit/io/CoverReader.hpp +0 -27
- package/vendor/include/networkit/io/CoverWriter.hpp +0 -21
- package/vendor/include/networkit/io/DGSReader.hpp +0 -39
- package/vendor/include/networkit/io/DibapGraphReader.hpp +0 -43
- package/vendor/include/networkit/io/DotGraphWriter.hpp +0 -39
- package/vendor/include/networkit/io/DotPartitionWriter.hpp +0 -23
- package/vendor/include/networkit/io/DynamicGraphReader.hpp +0 -29
- package/vendor/include/networkit/io/EdgeListCoverReader.hpp +0 -35
- package/vendor/include/networkit/io/EdgeListPartitionReader.hpp +0 -43
- package/vendor/include/networkit/io/EdgeListReader.hpp +0 -61
- package/vendor/include/networkit/io/EdgeListWriter.hpp +0 -48
- package/vendor/include/networkit/io/GMLGraphReader.hpp +0 -33
- package/vendor/include/networkit/io/GMLGraphWriter.hpp +0 -33
- package/vendor/include/networkit/io/GraphIO.hpp +0 -52
- package/vendor/include/networkit/io/GraphReader.hpp +0 -40
- package/vendor/include/networkit/io/GraphToolBinaryReader.hpp +0 -71
- package/vendor/include/networkit/io/GraphToolBinaryWriter.hpp +0 -61
- package/vendor/include/networkit/io/GraphWriter.hpp +0 -27
- package/vendor/include/networkit/io/KONECTGraphReader.hpp +0 -44
- package/vendor/include/networkit/io/LineFileReader.hpp +0 -42
- package/vendor/include/networkit/io/METISGraphReader.hpp +0 -36
- package/vendor/include/networkit/io/METISGraphWriter.hpp +0 -29
- package/vendor/include/networkit/io/METISParser.hpp +0 -63
- package/vendor/include/networkit/io/MTXGraphReader.hpp +0 -31
- package/vendor/include/networkit/io/MTXParser.hpp +0 -87
- package/vendor/include/networkit/io/MatrixMarketReader.hpp +0 -33
- package/vendor/include/networkit/io/MatrixReader.hpp +0 -33
- package/vendor/include/networkit/io/MemoryMappedFile.hpp +0 -80
- package/vendor/include/networkit/io/NetworkitBinaryGraph.hpp +0 -144
- package/vendor/include/networkit/io/NetworkitBinaryReader.hpp +0 -50
- package/vendor/include/networkit/io/NetworkitBinaryWriter.hpp +0 -71
- package/vendor/include/networkit/io/PartitionReader.hpp +0 -34
- package/vendor/include/networkit/io/PartitionWriter.hpp +0 -31
- package/vendor/include/networkit/io/RBGraphReader.hpp +0 -37
- package/vendor/include/networkit/io/RBMatrixReader.hpp +0 -49
- package/vendor/include/networkit/io/RasterReader.hpp +0 -40
- package/vendor/include/networkit/io/SNAPEdgeListPartitionReader.hpp +0 -28
- package/vendor/include/networkit/io/SNAPGraphReader.hpp +0 -53
- package/vendor/include/networkit/io/SNAPGraphWriter.hpp +0 -53
- package/vendor/include/networkit/io/ThrillGraphBinaryReader.hpp +0 -44
- package/vendor/include/networkit/io/ThrillGraphBinaryWriter.hpp +0 -27
- package/vendor/include/networkit/layout/LayoutAlgorithm.hpp +0 -39
- package/vendor/include/networkit/linkprediction/AdamicAdarIndex.hpp +0 -37
- package/vendor/include/networkit/linkprediction/AdjustedRandIndex.hpp +0 -36
- package/vendor/include/networkit/linkprediction/AlgebraicDistanceIndex.hpp +0 -70
- package/vendor/include/networkit/linkprediction/CommonNeighborsIndex.hpp +0 -39
- package/vendor/include/networkit/linkprediction/EvaluationMetric.hpp +0 -135
- package/vendor/include/networkit/linkprediction/JaccardIndex.hpp +0 -44
- package/vendor/include/networkit/linkprediction/KatzIndex.hpp +0 -84
- package/vendor/include/networkit/linkprediction/LinkPredictor.hpp +0 -98
- package/vendor/include/networkit/linkprediction/LinkThresholder.hpp +0 -56
- package/vendor/include/networkit/linkprediction/MissingLinksFinder.hpp +0 -60
- package/vendor/include/networkit/linkprediction/NeighborhoodDistanceIndex.hpp +0 -42
- package/vendor/include/networkit/linkprediction/NeighborhoodUtility.hpp +0 -54
- package/vendor/include/networkit/linkprediction/NeighborsMeasureIndex.hpp +0 -48
- package/vendor/include/networkit/linkprediction/PrecisionRecallMetric.hpp +0 -40
- package/vendor/include/networkit/linkprediction/PredictionsSorter.hpp +0 -66
- package/vendor/include/networkit/linkprediction/PreferentialAttachmentIndex.hpp +0 -37
- package/vendor/include/networkit/linkprediction/ROCMetric.hpp +0 -39
- package/vendor/include/networkit/linkprediction/RandomLinkSampler.hpp +0 -47
- package/vendor/include/networkit/linkprediction/ResourceAllocationIndex.hpp +0 -38
- package/vendor/include/networkit/linkprediction/SameCommunityIndex.hpp +0 -50
- package/vendor/include/networkit/linkprediction/TotalNeighborsIndex.hpp +0 -39
- package/vendor/include/networkit/linkprediction/UDegreeIndex.hpp +0 -35
- package/vendor/include/networkit/linkprediction/VDegreeIndex.hpp +0 -35
- package/vendor/include/networkit/matching/BMatcher.hpp +0 -52
- package/vendor/include/networkit/matching/BMatching.hpp +0 -115
- package/vendor/include/networkit/matching/BSuitorMatcher.hpp +0 -170
- package/vendor/include/networkit/matching/DynamicBSuitorMatcher.hpp +0 -78
- package/vendor/include/networkit/matching/LocalMaxMatcher.hpp +0 -35
- package/vendor/include/networkit/matching/Matcher.hpp +0 -55
- package/vendor/include/networkit/matching/Matching.hpp +0 -111
- package/vendor/include/networkit/matching/PathGrowingMatcher.hpp +0 -46
- package/vendor/include/networkit/matching/SuitorMatcher.hpp +0 -62
- package/vendor/include/networkit/numerics/ConjugateGradient.hpp +0 -163
- package/vendor/include/networkit/numerics/GaussSeidelRelaxation.hpp +0 -99
- package/vendor/include/networkit/numerics/LAMG/LAMGSettings.hpp +0 -70
- package/vendor/include/networkit/numerics/LAMG/Lamg.hpp +0 -460
- package/vendor/include/networkit/numerics/LAMG/Level/EliminationStage.hpp +0 -47
- package/vendor/include/networkit/numerics/LAMG/Level/Level.hpp +0 -56
- package/vendor/include/networkit/numerics/LAMG/Level/LevelAggregation.hpp +0 -52
- package/vendor/include/networkit/numerics/LAMG/Level/LevelElimination.hpp +0 -133
- package/vendor/include/networkit/numerics/LAMG/Level/LevelFinest.hpp +0 -28
- package/vendor/include/networkit/numerics/LAMG/LevelHierarchy.hpp +0 -165
- package/vendor/include/networkit/numerics/LAMG/MultiLevelSetup.hpp +0 -1090
- package/vendor/include/networkit/numerics/LAMG/SolverLamg.hpp +0 -316
- package/vendor/include/networkit/numerics/LinearSolver.hpp +0 -151
- package/vendor/include/networkit/numerics/Preconditioner/DiagonalPreconditioner.hpp +0 -61
- package/vendor/include/networkit/numerics/Preconditioner/IdentityPreconditioner.hpp +0 -36
- package/vendor/include/networkit/numerics/Smoother.hpp +0 -37
- package/vendor/include/networkit/overlap/HashingOverlapper.hpp +0 -28
- package/vendor/include/networkit/overlap/Overlapper.hpp +0 -27
- package/vendor/include/networkit/planarity/LeftRightPlanarityCheck.hpp +0 -113
- package/vendor/include/networkit/randomization/Curveball.hpp +0 -49
- package/vendor/include/networkit/randomization/CurveballGlobalTradeGenerator.hpp +0 -39
- package/vendor/include/networkit/randomization/CurveballUniformTradeGenerator.hpp +0 -39
- package/vendor/include/networkit/randomization/DegreePreservingShuffle.hpp +0 -82
- package/vendor/include/networkit/randomization/EdgeSwitching.hpp +0 -157
- package/vendor/include/networkit/randomization/GlobalCurveball.hpp +0 -69
- package/vendor/include/networkit/randomization/GlobalTradeSequence.hpp +0 -303
- package/vendor/include/networkit/reachability/AllSimplePaths.hpp +0 -122
- package/vendor/include/networkit/reachability/ReachableNodes.hpp +0 -83
- package/vendor/include/networkit/scd/ApproximatePageRank.hpp +0 -51
- package/vendor/include/networkit/scd/CliqueDetect.hpp +0 -55
- package/vendor/include/networkit/scd/CombinedSCD.hpp +0 -51
- package/vendor/include/networkit/scd/GCE.hpp +0 -42
- package/vendor/include/networkit/scd/LFMLocal.hpp +0 -54
- package/vendor/include/networkit/scd/LocalT.hpp +0 -40
- package/vendor/include/networkit/scd/LocalTightnessExpansion.hpp +0 -46
- package/vendor/include/networkit/scd/PageRankNibble.hpp +0 -55
- package/vendor/include/networkit/scd/RandomBFS.hpp +0 -33
- package/vendor/include/networkit/scd/SCDGroundTruthComparison.hpp +0 -121
- package/vendor/include/networkit/scd/SelectiveCommunityDetector.hpp +0 -76
- package/vendor/include/networkit/scd/SetConductance.hpp +0 -47
- package/vendor/include/networkit/scd/TCE.hpp +0 -41
- package/vendor/include/networkit/scd/TwoPhaseL.hpp +0 -40
- package/vendor/include/networkit/scoring/EdgeScoring.hpp +0 -44
- package/vendor/include/networkit/scoring/ModularityScoring.hpp +0 -79
- package/vendor/include/networkit/simulation/EpidemicSimulationSEIR.hpp +0 -59
- package/vendor/include/networkit/sparsification/ChanceCorrectedTriangleScore.hpp +0 -28
- package/vendor/include/networkit/sparsification/ForestFireScore.hpp +0 -34
- package/vendor/include/networkit/sparsification/GlobalThresholdFilter.hpp +0 -40
- package/vendor/include/networkit/sparsification/LocalDegreeScore.hpp +0 -30
- package/vendor/include/networkit/sparsification/LocalFilterScore.hpp +0 -124
- package/vendor/include/networkit/sparsification/LocalSimilarityScore.hpp +0 -63
- package/vendor/include/networkit/sparsification/MultiscaleScore.hpp +0 -38
- package/vendor/include/networkit/sparsification/RandomEdgeScore.hpp +0 -33
- package/vendor/include/networkit/sparsification/RandomNodeEdgeScore.hpp +0 -29
- package/vendor/include/networkit/sparsification/SCANStructuralSimilarityScore.hpp +0 -23
- package/vendor/include/networkit/sparsification/SimmelianOverlapScore.hpp +0 -35
- package/vendor/include/networkit/sparsification/SimmelianScore.hpp +0 -92
- package/vendor/include/networkit/sparsification/Sparsifiers.hpp +0 -166
- package/vendor/include/networkit/structures/Cover.hpp +0 -248
- package/vendor/include/networkit/structures/LocalCommunity.hpp +0 -363
- package/vendor/include/networkit/structures/Partition.hpp +0 -335
- package/vendor/include/networkit/structures/UnionFind.hpp +0 -66
- package/vendor/include/networkit/viz/GraphLayoutAlgorithm.hpp +0 -157
- package/vendor/include/networkit/viz/MaxentStress.hpp +0 -346
- package/vendor/include/networkit/viz/Octree.hpp +0 -428
- package/vendor/include/networkit/viz/PivotMDS.hpp +0 -63
- package/vendor/include/networkit/viz/Point.hpp +0 -415
- package/vendor/include/networkit/viz/PostscriptWriter.hpp +0 -78
- package/vendor/include/tlx/algorithm/exclusive_scan.hpp +0 -56
- package/vendor/include/tlx/algorithm/is_sorted_cmp.hpp +0 -56
- package/vendor/include/tlx/algorithm/merge_advance.hpp +0 -177
- package/vendor/include/tlx/algorithm/merge_combine.hpp +0 -76
- package/vendor/include/tlx/algorithm/multisequence_partition.hpp +0 -346
- package/vendor/include/tlx/algorithm/multisequence_selection.hpp +0 -351
- package/vendor/include/tlx/algorithm/multiway_merge.hpp +0 -1385
- package/vendor/include/tlx/algorithm/multiway_merge_splitting.hpp +0 -257
- package/vendor/include/tlx/algorithm/parallel_multiway_merge.hpp +0 -408
- package/vendor/include/tlx/algorithm/random_bipartition_shuffle.hpp +0 -116
- package/vendor/include/tlx/algorithm.hpp +0 -36
- package/vendor/include/tlx/allocator_base.hpp +0 -100
- package/vendor/include/tlx/backtrace.hpp +0 -54
- package/vendor/include/tlx/cmdline_parser.hpp +0 -498
- package/vendor/include/tlx/container/btree.hpp +0 -3977
- package/vendor/include/tlx/container/btree_map.hpp +0 -634
- package/vendor/include/tlx/container/btree_multimap.hpp +0 -627
- package/vendor/include/tlx/container/btree_multiset.hpp +0 -612
- package/vendor/include/tlx/container/btree_set.hpp +0 -612
- package/vendor/include/tlx/container/d_ary_addressable_int_heap.hpp +0 -416
- package/vendor/include/tlx/container/d_ary_heap.hpp +0 -311
- package/vendor/include/tlx/container/loser_tree.hpp +0 -1009
- package/vendor/include/tlx/container/lru_cache.hpp +0 -319
- package/vendor/include/tlx/container/radix_heap.hpp +0 -735
- package/vendor/include/tlx/container/ring_buffer.hpp +0 -428
- package/vendor/include/tlx/container/simple_vector.hpp +0 -304
- package/vendor/include/tlx/container/splay_tree.hpp +0 -399
- package/vendor/include/tlx/container/string_view.hpp +0 -805
- package/vendor/include/tlx/container.hpp +0 -40
- package/vendor/include/tlx/counting_ptr.hpp +0 -522
- package/vendor/include/tlx/define/attribute_always_inline.hpp +0 -34
- package/vendor/include/tlx/define/attribute_fallthrough.hpp +0 -36
- package/vendor/include/tlx/define/attribute_format_printf.hpp +0 -34
- package/vendor/include/tlx/define/attribute_packed.hpp +0 -34
- package/vendor/include/tlx/define/attribute_warn_unused_result.hpp +0 -34
- package/vendor/include/tlx/define/constexpr.hpp +0 -31
- package/vendor/include/tlx/define/deprecated.hpp +0 -39
- package/vendor/include/tlx/define/endian.hpp +0 -49
- package/vendor/include/tlx/define/likely.hpp +0 -33
- package/vendor/include/tlx/define/visibility_hidden.hpp +0 -34
- package/vendor/include/tlx/define.hpp +0 -36
- package/vendor/include/tlx/delegate.hpp +0 -524
- package/vendor/include/tlx/die/core.hpp +0 -311
- package/vendor/include/tlx/die.hpp +0 -106
- package/vendor/include/tlx/digest/md5.hpp +0 -81
- package/vendor/include/tlx/digest/sha1.hpp +0 -81
- package/vendor/include/tlx/digest/sha256.hpp +0 -81
- package/vendor/include/tlx/digest/sha512.hpp +0 -81
- package/vendor/include/tlx/digest.hpp +0 -30
- package/vendor/include/tlx/logger/all.hpp +0 -33
- package/vendor/include/tlx/logger/array.hpp +0 -43
- package/vendor/include/tlx/logger/core.hpp +0 -287
- package/vendor/include/tlx/logger/deque.hpp +0 -42
- package/vendor/include/tlx/logger/map.hpp +0 -65
- package/vendor/include/tlx/logger/set.hpp +0 -60
- package/vendor/include/tlx/logger/tuple.hpp +0 -66
- package/vendor/include/tlx/logger/unordered_map.hpp +0 -68
- package/vendor/include/tlx/logger/unordered_set.hpp +0 -64
- package/vendor/include/tlx/logger/wrap_unprintable.hpp +0 -75
- package/vendor/include/tlx/logger.hpp +0 -44
- package/vendor/include/tlx/math/abs_diff.hpp +0 -35
- package/vendor/include/tlx/math/aggregate.hpp +0 -231
- package/vendor/include/tlx/math/aggregate_min_max.hpp +0 -116
- package/vendor/include/tlx/math/bswap.hpp +0 -148
- package/vendor/include/tlx/math/bswap_be.hpp +0 -79
- package/vendor/include/tlx/math/bswap_le.hpp +0 -79
- package/vendor/include/tlx/math/clz.hpp +0 -174
- package/vendor/include/tlx/math/ctz.hpp +0 -174
- package/vendor/include/tlx/math/div_ceil.hpp +0 -36
- package/vendor/include/tlx/math/ffs.hpp +0 -123
- package/vendor/include/tlx/math/integer_log2.hpp +0 -189
- package/vendor/include/tlx/math/is_power_of_two.hpp +0 -74
- package/vendor/include/tlx/math/polynomial_regression.hpp +0 -243
- package/vendor/include/tlx/math/popcount.hpp +0 -173
- package/vendor/include/tlx/math/power_to_the.hpp +0 -44
- package/vendor/include/tlx/math/rol.hpp +0 -112
- package/vendor/include/tlx/math/ror.hpp +0 -112
- package/vendor/include/tlx/math/round_to_power_of_two.hpp +0 -121
- package/vendor/include/tlx/math/round_up.hpp +0 -36
- package/vendor/include/tlx/math/sgn.hpp +0 -38
- package/vendor/include/tlx/math.hpp +0 -46
- package/vendor/include/tlx/meta/apply_tuple.hpp +0 -55
- package/vendor/include/tlx/meta/call_for_range.hpp +0 -78
- package/vendor/include/tlx/meta/call_foreach.hpp +0 -60
- package/vendor/include/tlx/meta/call_foreach_tuple.hpp +0 -60
- package/vendor/include/tlx/meta/call_foreach_tuple_with_index.hpp +0 -61
- package/vendor/include/tlx/meta/call_foreach_with_index.hpp +0 -64
- package/vendor/include/tlx/meta/enable_if.hpp +0 -37
- package/vendor/include/tlx/meta/fold_left.hpp +0 -63
- package/vendor/include/tlx/meta/fold_left_tuple.hpp +0 -60
- package/vendor/include/tlx/meta/fold_right.hpp +0 -63
- package/vendor/include/tlx/meta/fold_right_tuple.hpp +0 -60
- package/vendor/include/tlx/meta/function_chain.hpp +0 -197
- package/vendor/include/tlx/meta/function_stack.hpp +0 -189
- package/vendor/include/tlx/meta/has_member.hpp +0 -80
- package/vendor/include/tlx/meta/has_method.hpp +0 -117
- package/vendor/include/tlx/meta/index_sequence.hpp +0 -66
- package/vendor/include/tlx/meta/is_std_array.hpp +0 -40
- package/vendor/include/tlx/meta/is_std_pair.hpp +0 -39
- package/vendor/include/tlx/meta/is_std_tuple.hpp +0 -39
- package/vendor/include/tlx/meta/is_std_vector.hpp +0 -39
- package/vendor/include/tlx/meta/log2.hpp +0 -101
- package/vendor/include/tlx/meta/no_operation.hpp +0 -55
- package/vendor/include/tlx/meta/static_index.hpp +0 -42
- package/vendor/include/tlx/meta/vexpand.hpp +0 -34
- package/vendor/include/tlx/meta/vmap_for_range.hpp +0 -84
- package/vendor/include/tlx/meta/vmap_foreach.hpp +0 -63
- package/vendor/include/tlx/meta/vmap_foreach_tuple.hpp +0 -59
- package/vendor/include/tlx/meta/vmap_foreach_tuple_with_index.hpp +0 -62
- package/vendor/include/tlx/meta/vmap_foreach_with_index.hpp +0 -70
- package/vendor/include/tlx/meta.hpp +0 -55
- package/vendor/include/tlx/multi_timer.hpp +0 -148
- package/vendor/include/tlx/port/setenv.hpp +0 -31
- package/vendor/include/tlx/port.hpp +0 -27
- package/vendor/include/tlx/semaphore.hpp +0 -119
- package/vendor/include/tlx/simple_vector.hpp +0 -20
- package/vendor/include/tlx/siphash.hpp +0 -282
- package/vendor/include/tlx/sort/networks/best.hpp +0 -611
- package/vendor/include/tlx/sort/networks/bose_nelson.hpp +0 -412
- package/vendor/include/tlx/sort/networks/bose_nelson_parameter.hpp +0 -507
- package/vendor/include/tlx/sort/networks/cswap.hpp +0 -60
- package/vendor/include/tlx/sort/parallel_mergesort.hpp +0 -398
- package/vendor/include/tlx/sort/strings/insertion_sort.hpp +0 -232
- package/vendor/include/tlx/sort/strings/multikey_quicksort.hpp +0 -185
- package/vendor/include/tlx/sort/strings/parallel_sample_sort.hpp +0 -1647
- package/vendor/include/tlx/sort/strings/radix_sort.hpp +0 -934
- package/vendor/include/tlx/sort/strings/sample_sort_tools.hpp +0 -756
- package/vendor/include/tlx/sort/strings/string_ptr.hpp +0 -426
- package/vendor/include/tlx/sort/strings/string_set.hpp +0 -800
- package/vendor/include/tlx/sort/strings.hpp +0 -329
- package/vendor/include/tlx/sort/strings_parallel.hpp +0 -325
- package/vendor/include/tlx/sort.hpp +0 -29
- package/vendor/include/tlx/stack_allocator.hpp +0 -226
- package/vendor/include/tlx/string/appendline.hpp +0 -35
- package/vendor/include/tlx/string/base64.hpp +0 -87
- package/vendor/include/tlx/string/bitdump.hpp +0 -139
- package/vendor/include/tlx/string/compare_icase.hpp +0 -42
- package/vendor/include/tlx/string/contains.hpp +0 -36
- package/vendor/include/tlx/string/contains_word.hpp +0 -42
- package/vendor/include/tlx/string/ends_with.hpp +0 -79
- package/vendor/include/tlx/string/equal_icase.hpp +0 -42
- package/vendor/include/tlx/string/erase_all.hpp +0 -70
- package/vendor/include/tlx/string/escape_html.hpp +0 -34
- package/vendor/include/tlx/string/escape_uri.hpp +0 -34
- package/vendor/include/tlx/string/expand_environment_variables.hpp +0 -49
- package/vendor/include/tlx/string/extract_between.hpp +0 -40
- package/vendor/include/tlx/string/format_iec_units.hpp +0 -32
- package/vendor/include/tlx/string/format_si_iec_units.hpp +0 -19
- package/vendor/include/tlx/string/format_si_units.hpp +0 -32
- package/vendor/include/tlx/string/hash_djb2.hpp +0 -87
- package/vendor/include/tlx/string/hash_sdbm.hpp +0 -86
- package/vendor/include/tlx/string/hexdump.hpp +0 -154
- package/vendor/include/tlx/string/index_of.hpp +0 -56
- package/vendor/include/tlx/string/join.hpp +0 -65
- package/vendor/include/tlx/string/join_generic.hpp +0 -89
- package/vendor/include/tlx/string/join_quoted.hpp +0 -46
- package/vendor/include/tlx/string/less_icase.hpp +0 -64
- package/vendor/include/tlx/string/levenshtein.hpp +0 -193
- package/vendor/include/tlx/string/pad.hpp +0 -39
- package/vendor/include/tlx/string/parse_si_iec_units.hpp +0 -46
- package/vendor/include/tlx/string/parse_uri.hpp +0 -66
- package/vendor/include/tlx/string/parse_uri_form_data.hpp +0 -136
- package/vendor/include/tlx/string/replace.hpp +0 -141
- package/vendor/include/tlx/string/split.hpp +0 -170
- package/vendor/include/tlx/string/split_quoted.hpp +0 -49
- package/vendor/include/tlx/string/split_view.hpp +0 -218
- package/vendor/include/tlx/string/split_words.hpp +0 -53
- package/vendor/include/tlx/string/ssprintf.hpp +0 -45
- package/vendor/include/tlx/string/ssprintf_generic.hpp +0 -95
- package/vendor/include/tlx/string/starts_with.hpp +0 -44
- package/vendor/include/tlx/string/to_lower.hpp +0 -47
- package/vendor/include/tlx/string/to_upper.hpp +0 -47
- package/vendor/include/tlx/string/trim.hpp +0 -298
- package/vendor/include/tlx/string/union_words.hpp +0 -33
- package/vendor/include/tlx/string/word_wrap.hpp +0 -35
- package/vendor/include/tlx/string.hpp +0 -68
- package/vendor/include/tlx/thread_barrier_mutex.hpp +0 -109
- package/vendor/include/tlx/thread_barrier_spin.hpp +0 -127
- package/vendor/include/tlx/thread_pool.hpp +0 -151
- package/vendor/include/tlx/timestamp.hpp +0 -23
- package/vendor/include/tlx/unused.hpp +0 -28
- package/vendor/include/tlx/vector_free.hpp +0 -30
- package/vendor/include/tlx/version.hpp +0 -49
- package/vendor/include/ttmath/ttmath.h +0 -2881
- package/vendor/include/ttmath/ttmathbig.h +0 -6111
- package/vendor/include/ttmath/ttmathdec.h +0 -419
- package/vendor/include/ttmath/ttmathint.h +0 -1923
- package/vendor/include/ttmath/ttmathmisc.h +0 -250
- package/vendor/include/ttmath/ttmathobjects.h +0 -812
- package/vendor/include/ttmath/ttmathparser.h +0 -2791
- package/vendor/include/ttmath/ttmaththreads.h +0 -252
- package/vendor/include/ttmath/ttmathtypes.h +0 -707
- package/vendor/include/ttmath/ttmathuint.h +0 -4190
- package/vendor/include/ttmath/ttmathuint_noasm.h +0 -1038
- package/vendor/include/ttmath/ttmathuint_x86.h +0 -1620
- package/vendor/include/ttmath/ttmathuint_x86_64.h +0 -1177
- package/vendor/lib/cmake/tlx/tlx-config.cmake +0 -51
- package/vendor/lib/cmake/tlx/tlx-targets-release.cmake +0 -19
- package/vendor/lib/cmake/tlx/tlx-targets.cmake +0 -106
- package/vendor/lib/cmake/tlx/tlx-version.cmake +0 -11
- package/vendor/lib/libtlx.a +0 -0
- package/vendor/lib/pkgconfig/networkit.pc +0 -11
- package/vendor/lib/pkgconfig/tlx.pc +0 -11
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
/*******************************************************************************
|
|
2
|
-
* tlx/container.hpp
|
|
3
|
-
*
|
|
4
|
-
* Part of tlx - http://panthema.net/tlx
|
|
5
|
-
*
|
|
6
|
-
* Copyright (C) 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_CONTAINER_HEADER
|
|
12
|
-
#define TLX_CONTAINER_HEADER
|
|
13
|
-
|
|
14
|
-
//! \defgroup tlx_container Containers and Data Structures
|
|
15
|
-
//! Containers and Data Structures
|
|
16
|
-
|
|
17
|
-
/*[[[perl
|
|
18
|
-
foreach (sort glob("tlx/container/"."*.hpp")) {
|
|
19
|
-
print "#include <$_> // NOLINT(misc-include-cleaner)\n"
|
|
20
|
-
}
|
|
21
|
-
]]]*/
|
|
22
|
-
#include <tlx/container/btree.hpp> // NOLINT(misc-include-cleaner)
|
|
23
|
-
#include <tlx/container/btree_map.hpp> // NOLINT(misc-include-cleaner)
|
|
24
|
-
#include <tlx/container/btree_multimap.hpp> // NOLINT(misc-include-cleaner)
|
|
25
|
-
#include <tlx/container/btree_multiset.hpp> // NOLINT(misc-include-cleaner)
|
|
26
|
-
#include <tlx/container/btree_set.hpp> // NOLINT(misc-include-cleaner)
|
|
27
|
-
#include <tlx/container/d_ary_addressable_int_heap.hpp> // NOLINT(misc-include-cleaner)
|
|
28
|
-
#include <tlx/container/d_ary_heap.hpp> // NOLINT(misc-include-cleaner)
|
|
29
|
-
#include <tlx/container/loser_tree.hpp> // NOLINT(misc-include-cleaner)
|
|
30
|
-
#include <tlx/container/lru_cache.hpp> // NOLINT(misc-include-cleaner)
|
|
31
|
-
#include <tlx/container/radix_heap.hpp> // NOLINT(misc-include-cleaner)
|
|
32
|
-
#include <tlx/container/ring_buffer.hpp> // NOLINT(misc-include-cleaner)
|
|
33
|
-
#include <tlx/container/simple_vector.hpp> // NOLINT(misc-include-cleaner)
|
|
34
|
-
#include <tlx/container/splay_tree.hpp> // NOLINT(misc-include-cleaner)
|
|
35
|
-
#include <tlx/container/string_view.hpp> // NOLINT(misc-include-cleaner)
|
|
36
|
-
// [[[end]]]
|
|
37
|
-
|
|
38
|
-
#endif // !TLX_CONTAINER_HEADER
|
|
39
|
-
|
|
40
|
-
/******************************************************************************/
|
|
@@ -1,522 +0,0 @@
|
|
|
1
|
-
/*******************************************************************************
|
|
2
|
-
* tlx/counting_ptr.hpp
|
|
3
|
-
*
|
|
4
|
-
* Part of tlx - http://panthema.net/tlx
|
|
5
|
-
*
|
|
6
|
-
* Copyright (C) 2013-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_COUNTING_PTR_HEADER
|
|
12
|
-
#define TLX_COUNTING_PTR_HEADER
|
|
13
|
-
|
|
14
|
-
#include <algorithm>
|
|
15
|
-
#include <atomic>
|
|
16
|
-
#include <cassert>
|
|
17
|
-
#include <cstddef>
|
|
18
|
-
#include <iosfwd>
|
|
19
|
-
#include <type_traits>
|
|
20
|
-
#include <utility>
|
|
21
|
-
|
|
22
|
-
namespace tlx {
|
|
23
|
-
|
|
24
|
-
//! default deleter for CountingPtr
|
|
25
|
-
class CountingPtrDefaultDeleter
|
|
26
|
-
{
|
|
27
|
-
public:
|
|
28
|
-
template <typename Type>
|
|
29
|
-
void operator()(Type* ptr) const noexcept
|
|
30
|
-
{
|
|
31
|
-
delete ptr;
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
//! dummy deleter for CountingPtr
|
|
36
|
-
class CountingPtrNoOperationDeleter
|
|
37
|
-
{
|
|
38
|
-
public:
|
|
39
|
-
template <typename Type>
|
|
40
|
-
void operator()(Type*) const noexcept
|
|
41
|
-
{
|
|
42
|
-
}
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
/*!
|
|
46
|
-
* High-performance smart pointer used as a wrapping reference counting pointer.
|
|
47
|
-
*
|
|
48
|
-
* This smart pointer class requires two functions in the template type: void
|
|
49
|
-
* inc_reference() and void dec_reference(). These must increment and decrement
|
|
50
|
-
* a reference count inside the templated object. When initialized, the type
|
|
51
|
-
* must have reference count zero. Each new object referencing the data calls
|
|
52
|
-
* inc_reference() and each destroying holder calls del_reference(). When the
|
|
53
|
-
* data object determines that it's internal count is zero, then it must destroy
|
|
54
|
-
* itself.
|
|
55
|
-
*
|
|
56
|
-
* Accompanying the CountingPtr is a class ReferenceCounter, from which
|
|
57
|
-
* reference counted classes may be derive from. The class ReferenceCounter
|
|
58
|
-
* implement all methods required for reference counting.
|
|
59
|
-
*
|
|
60
|
-
* The whole method is more similar to boost's instrusive_ptr, but also yields
|
|
61
|
-
* something resembling std::shared_ptr. However, compared to std::shared_ptr,
|
|
62
|
-
* this class only contains a single pointer, while shared_ptr contains two
|
|
63
|
-
* which are only related if constructed with std::make_shared.
|
|
64
|
-
*
|
|
65
|
-
* Another advantage with this method is that no kludges like
|
|
66
|
-
* std::enable_shared_from_this are needed.
|
|
67
|
-
*/
|
|
68
|
-
template <typename Type, typename Deleter = CountingPtrDefaultDeleter>
|
|
69
|
-
class CountingPtr
|
|
70
|
-
{
|
|
71
|
-
public:
|
|
72
|
-
//! contained type.
|
|
73
|
-
using element_type = Type;
|
|
74
|
-
|
|
75
|
-
private:
|
|
76
|
-
//! the pointer to the currently referenced object.
|
|
77
|
-
Type* ptr_;
|
|
78
|
-
|
|
79
|
-
//! increment reference count of object.
|
|
80
|
-
void inc_reference(Type* o) noexcept
|
|
81
|
-
{
|
|
82
|
-
if (o)
|
|
83
|
-
o->inc_reference();
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
//! decrement reference count of current object and maybe delete it.
|
|
87
|
-
void dec_reference() noexcept
|
|
88
|
-
{
|
|
89
|
-
if (ptr_ && ptr_->dec_reference())
|
|
90
|
-
Deleter()(ptr_);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
public:
|
|
94
|
-
//! all CountingPtr are friends such that they may steal pointers.
|
|
95
|
-
template <typename Other, typename OtherDeleter>
|
|
96
|
-
friend class CountingPtr;
|
|
97
|
-
|
|
98
|
-
//! \name Construction, Assignment and Destruction
|
|
99
|
-
//! \{
|
|
100
|
-
|
|
101
|
-
//! default constructor: contains a nullptr pointer.
|
|
102
|
-
CountingPtr() noexcept : ptr_(nullptr)
|
|
103
|
-
{
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
//! implicit conversion from nullptr_t: contains a nullptr pointer.
|
|
107
|
-
CountingPtr(std::nullptr_t) noexcept : ptr_(nullptr)
|
|
108
|
-
{
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
//! constructor from pointer: initializes new reference to ptr.
|
|
112
|
-
explicit CountingPtr(Type* ptr) noexcept : ptr_(ptr)
|
|
113
|
-
{
|
|
114
|
-
inc_reference(ptr_);
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
//! copy-constructor: also initializes new reference to ptr.
|
|
118
|
-
CountingPtr(const CountingPtr& other) noexcept : ptr_(other.ptr_)
|
|
119
|
-
{
|
|
120
|
-
inc_reference(ptr_);
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
//! copy-constructor: also initializes new reference to ptr.
|
|
124
|
-
template <typename Subclass,
|
|
125
|
-
typename = typename std::enable_if<
|
|
126
|
-
std::is_convertible<Subclass*, Type*>::value, void>::type>
|
|
127
|
-
CountingPtr(const CountingPtr<Subclass, Deleter>& other) noexcept
|
|
128
|
-
: ptr_(other.ptr_)
|
|
129
|
-
{
|
|
130
|
-
inc_reference(ptr_);
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
//! move-constructor: just moves pointer, does not change reference counts.
|
|
134
|
-
CountingPtr(CountingPtr&& other) noexcept : ptr_(other.ptr_)
|
|
135
|
-
{
|
|
136
|
-
other.ptr_ = nullptr;
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
//! move-constructor: just moves pointer, does not change reference counts.
|
|
140
|
-
template <typename Subclass,
|
|
141
|
-
typename = typename std::enable_if<
|
|
142
|
-
std::is_convertible<Subclass*, Type*>::value, void>::type>
|
|
143
|
-
CountingPtr(CountingPtr<Subclass, Deleter>&& other) noexcept
|
|
144
|
-
: ptr_(other.ptr_)
|
|
145
|
-
{
|
|
146
|
-
other.ptr_ = nullptr;
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
//! copy-assignment operator: acquire reference on new one and dereference
|
|
150
|
-
//! current object.
|
|
151
|
-
CountingPtr& operator=(const CountingPtr& other) noexcept
|
|
152
|
-
{
|
|
153
|
-
if (ptr_ == other.ptr_)
|
|
154
|
-
return *this;
|
|
155
|
-
inc_reference(other.ptr_);
|
|
156
|
-
dec_reference();
|
|
157
|
-
ptr_ = other.ptr_;
|
|
158
|
-
return *this;
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
//! copy-assignment operator: acquire reference on new one and dereference
|
|
162
|
-
//! current object.
|
|
163
|
-
template <typename Subclass,
|
|
164
|
-
typename = typename std::enable_if<
|
|
165
|
-
std::is_convertible<Subclass*, Type*>::value, void>::type>
|
|
166
|
-
CountingPtr& operator=(const CountingPtr<Subclass, Deleter>& other) noexcept
|
|
167
|
-
{
|
|
168
|
-
if (ptr_ == other.ptr_)
|
|
169
|
-
return *this;
|
|
170
|
-
inc_reference(other.ptr_);
|
|
171
|
-
dec_reference();
|
|
172
|
-
ptr_ = other.ptr_;
|
|
173
|
-
return *this;
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
//! move-assignment operator: move reference of other to current object.
|
|
177
|
-
CountingPtr& operator=(CountingPtr&& other) noexcept
|
|
178
|
-
{
|
|
179
|
-
if (ptr_ == other.ptr_)
|
|
180
|
-
return *this;
|
|
181
|
-
dec_reference();
|
|
182
|
-
ptr_ = other.ptr_;
|
|
183
|
-
other.ptr_ = nullptr;
|
|
184
|
-
return *this;
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
//! move-assignment operator: move reference of other to current object.
|
|
188
|
-
template <typename Subclass,
|
|
189
|
-
typename = typename std::enable_if<
|
|
190
|
-
std::is_convertible<Subclass*, Type*>::value, void>::type>
|
|
191
|
-
CountingPtr& operator=(CountingPtr<Subclass, Deleter>&& other) noexcept
|
|
192
|
-
{
|
|
193
|
-
if (ptr_ == other.ptr_)
|
|
194
|
-
return *this;
|
|
195
|
-
dec_reference();
|
|
196
|
-
ptr_ = other.ptr_;
|
|
197
|
-
other.ptr_ = nullptr;
|
|
198
|
-
return *this;
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
//! destructor: decrements reference count in ptr.
|
|
202
|
-
~CountingPtr()
|
|
203
|
-
{
|
|
204
|
-
dec_reference();
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
//! \}
|
|
208
|
-
|
|
209
|
-
//! \name Observers
|
|
210
|
-
//! \{
|
|
211
|
-
|
|
212
|
-
//! return the enclosed object as reference.
|
|
213
|
-
Type& operator*() const noexcept
|
|
214
|
-
{
|
|
215
|
-
assert(ptr_);
|
|
216
|
-
return *ptr_;
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
//! return the enclosed pointer.
|
|
220
|
-
Type* operator->() const noexcept
|
|
221
|
-
{
|
|
222
|
-
assert(ptr_);
|
|
223
|
-
return ptr_;
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
//! return the enclosed pointer.
|
|
227
|
-
Type* get() const noexcept
|
|
228
|
-
{
|
|
229
|
-
return ptr_;
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
//! test for a non-nullptr pointer
|
|
233
|
-
bool valid() const noexcept
|
|
234
|
-
{
|
|
235
|
-
return (ptr_ != nullptr);
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
//! cast to bool checks for a nullptr pointer
|
|
239
|
-
operator bool() const noexcept
|
|
240
|
-
{
|
|
241
|
-
return valid();
|
|
242
|
-
}
|
|
243
|
-
|
|
244
|
-
//! test for a nullptr pointer
|
|
245
|
-
bool empty() const noexcept
|
|
246
|
-
{
|
|
247
|
-
return (ptr_ == nullptr);
|
|
248
|
-
}
|
|
249
|
-
|
|
250
|
-
//! if the object is referred by this CountingPtr only
|
|
251
|
-
bool unique() const noexcept
|
|
252
|
-
{
|
|
253
|
-
return ptr_ && ptr_->unique();
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
//! Returns the number of different shared_ptr instances managing the
|
|
257
|
-
//! current object.
|
|
258
|
-
size_t use_count() const noexcept
|
|
259
|
-
{
|
|
260
|
-
return ptr_->reference_count();
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
//! \}
|
|
264
|
-
|
|
265
|
-
//! \name Modifiers
|
|
266
|
-
//! \{
|
|
267
|
-
|
|
268
|
-
//! release contained pointer, frees object if this is the last reference.
|
|
269
|
-
void reset()
|
|
270
|
-
{
|
|
271
|
-
dec_reference();
|
|
272
|
-
ptr_ = nullptr;
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
//! swap enclosed object with another counting pointer (no reference counts
|
|
276
|
-
//! need change)
|
|
277
|
-
void swap(CountingPtr& b) noexcept
|
|
278
|
-
{
|
|
279
|
-
std::swap(ptr_, b.ptr_);
|
|
280
|
-
}
|
|
281
|
-
|
|
282
|
-
//! make and refer a copy if the original object was shared.
|
|
283
|
-
void unify()
|
|
284
|
-
{
|
|
285
|
-
if (ptr_ && !ptr_->unique())
|
|
286
|
-
operator=(CountingPtr(new Type(*ptr_)));
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
//! \}
|
|
290
|
-
|
|
291
|
-
//! \name Comparison Operators
|
|
292
|
-
//! \{
|
|
293
|
-
|
|
294
|
-
//! test equality of only the pointer values.
|
|
295
|
-
bool operator==(const CountingPtr& other) const noexcept
|
|
296
|
-
{
|
|
297
|
-
return ptr_ == other.ptr_;
|
|
298
|
-
}
|
|
299
|
-
|
|
300
|
-
//! test inequality of only the pointer values.
|
|
301
|
-
bool operator!=(const CountingPtr& other) const noexcept
|
|
302
|
-
{
|
|
303
|
-
return ptr_ != other.ptr_;
|
|
304
|
-
}
|
|
305
|
-
|
|
306
|
-
//! test equality of only the address pointed to
|
|
307
|
-
bool operator==(Type* other) const noexcept
|
|
308
|
-
{
|
|
309
|
-
return ptr_ == other;
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
//! test inequality of only the address pointed to
|
|
313
|
-
bool operator!=(Type* other) const noexcept
|
|
314
|
-
{
|
|
315
|
-
return ptr_ != other;
|
|
316
|
-
}
|
|
317
|
-
|
|
318
|
-
//! compare the pointer values.
|
|
319
|
-
bool operator<(const CountingPtr& other) const noexcept
|
|
320
|
-
{
|
|
321
|
-
return ptr_ < other.ptr_;
|
|
322
|
-
}
|
|
323
|
-
|
|
324
|
-
//! compare the pointer values.
|
|
325
|
-
bool operator<=(const CountingPtr& other) const noexcept
|
|
326
|
-
{
|
|
327
|
-
return ptr_ <= other.ptr_;
|
|
328
|
-
}
|
|
329
|
-
|
|
330
|
-
//! compare the pointer values.
|
|
331
|
-
bool operator>(const CountingPtr& other) const noexcept
|
|
332
|
-
{
|
|
333
|
-
return ptr_ > other.ptr_;
|
|
334
|
-
}
|
|
335
|
-
|
|
336
|
-
//! compare the pointer values.
|
|
337
|
-
bool operator>=(const CountingPtr& other) const noexcept
|
|
338
|
-
{
|
|
339
|
-
return ptr_ >= other.ptr_;
|
|
340
|
-
}
|
|
341
|
-
|
|
342
|
-
//! compare the pointer values.
|
|
343
|
-
bool operator<(Type* other) const noexcept
|
|
344
|
-
{
|
|
345
|
-
return ptr_ < other;
|
|
346
|
-
}
|
|
347
|
-
|
|
348
|
-
//! compare the pointer values.
|
|
349
|
-
bool operator<=(Type* other) const noexcept
|
|
350
|
-
{
|
|
351
|
-
return ptr_ <= other;
|
|
352
|
-
}
|
|
353
|
-
|
|
354
|
-
//! compare the pointer values.
|
|
355
|
-
bool operator>(Type* other) const noexcept
|
|
356
|
-
{
|
|
357
|
-
return ptr_ > other;
|
|
358
|
-
}
|
|
359
|
-
|
|
360
|
-
//! compare the pointer values.
|
|
361
|
-
bool operator>=(Type* other) const noexcept
|
|
362
|
-
{
|
|
363
|
-
return ptr_ >= other;
|
|
364
|
-
}
|
|
365
|
-
|
|
366
|
-
//! \}
|
|
367
|
-
};
|
|
368
|
-
|
|
369
|
-
//! make alias due to similarity with std::shared_ptr<T>
|
|
370
|
-
template <typename Type>
|
|
371
|
-
using counting_ptr = CountingPtr<Type>;
|
|
372
|
-
|
|
373
|
-
//! make alias for dummy deleter
|
|
374
|
-
template <typename Type>
|
|
375
|
-
using CountingPtrNoDelete = CountingPtr<Type, CountingPtrNoOperationDeleter>;
|
|
376
|
-
|
|
377
|
-
//! method analogous to std::make_shared and std::make_unique.
|
|
378
|
-
template <typename Type, typename... Args>
|
|
379
|
-
CountingPtr<Type> make_counting(Args&&... args)
|
|
380
|
-
{
|
|
381
|
-
return CountingPtr<Type>(new Type(std::forward<Args>(args)...));
|
|
382
|
-
}
|
|
383
|
-
|
|
384
|
-
//! swap enclosed object with another counting pointer (no reference counts need
|
|
385
|
-
//! change)
|
|
386
|
-
template <typename A, typename D>
|
|
387
|
-
void swap(CountingPtr<A, D>& a1, CountingPtr<A, D>& a2) noexcept
|
|
388
|
-
{
|
|
389
|
-
a1.swap(a2);
|
|
390
|
-
}
|
|
391
|
-
|
|
392
|
-
//! print pointer
|
|
393
|
-
template <typename A, typename D>
|
|
394
|
-
std::ostream& operator<<(std::ostream& os, const CountingPtr<A, D>& c)
|
|
395
|
-
{
|
|
396
|
-
return os << c.get();
|
|
397
|
-
}
|
|
398
|
-
|
|
399
|
-
/*!
|
|
400
|
-
* Provides reference counting abilities for use with CountingPtr.
|
|
401
|
-
*
|
|
402
|
-
* Use as superclass of the actual object, this adds a reference_count_
|
|
403
|
-
* value. Then either use CountingPtr as pointer to manage references and
|
|
404
|
-
* deletion, or just do normal new and delete.
|
|
405
|
-
*/
|
|
406
|
-
class ReferenceCounter
|
|
407
|
-
{
|
|
408
|
-
private:
|
|
409
|
-
//! the reference count is kept mutable for CountingPtr<const Type> to
|
|
410
|
-
//! change the reference count.
|
|
411
|
-
mutable std::atomic<size_t> reference_count_;
|
|
412
|
-
|
|
413
|
-
public:
|
|
414
|
-
//! new objects have zero reference count
|
|
415
|
-
ReferenceCounter() noexcept : reference_count_(0)
|
|
416
|
-
{
|
|
417
|
-
}
|
|
418
|
-
|
|
419
|
-
//! coping still creates a new object with zero reference count
|
|
420
|
-
ReferenceCounter(const ReferenceCounter&) noexcept : reference_count_(0)
|
|
421
|
-
{
|
|
422
|
-
}
|
|
423
|
-
|
|
424
|
-
//! assignment operator, leaves pointers unchanged
|
|
425
|
-
ReferenceCounter& operator=(const ReferenceCounter&) noexcept
|
|
426
|
-
{
|
|
427
|
-
// changing the contents leaves pointers unchanged
|
|
428
|
-
return *this;
|
|
429
|
-
}
|
|
430
|
-
|
|
431
|
-
~ReferenceCounter()
|
|
432
|
-
{
|
|
433
|
-
assert(reference_count_ == 0);
|
|
434
|
-
}
|
|
435
|
-
|
|
436
|
-
public:
|
|
437
|
-
//! Call whenever setting a pointer to the object.
|
|
438
|
-
void inc_reference() const noexcept
|
|
439
|
-
{
|
|
440
|
-
++reference_count_;
|
|
441
|
-
}
|
|
442
|
-
|
|
443
|
-
/*!
|
|
444
|
-
* Call whenever resetting (i.e. overwriting) a pointer to the object.
|
|
445
|
-
* IMPORTANT: In case of self-assignment, call AFTER inc_reference().
|
|
446
|
-
*
|
|
447
|
-
* \return if the object has to be deleted (i.e. if it's reference count
|
|
448
|
-
* dropped to zero)
|
|
449
|
-
*/
|
|
450
|
-
bool dec_reference() const noexcept
|
|
451
|
-
{
|
|
452
|
-
assert(reference_count_ > 0);
|
|
453
|
-
return (--reference_count_ == 0);
|
|
454
|
-
}
|
|
455
|
-
|
|
456
|
-
//! Test if the ReferenceCounter is referenced by only one CountingPtr.
|
|
457
|
-
bool unique() const noexcept
|
|
458
|
-
{
|
|
459
|
-
return (reference_count_ == 1);
|
|
460
|
-
}
|
|
461
|
-
|
|
462
|
-
//! Return the number of references to this object (for debugging)
|
|
463
|
-
size_t reference_count() const noexcept
|
|
464
|
-
{
|
|
465
|
-
return reference_count_;
|
|
466
|
-
}
|
|
467
|
-
};
|
|
468
|
-
|
|
469
|
-
//! make alias due to CountingPtr's similarity with std::shared_ptr<T>
|
|
470
|
-
using reference_counter = ReferenceCounter;
|
|
471
|
-
|
|
472
|
-
/** \page tlx_counting_ptr CountingPtr – an intrusive reference counting pointer
|
|
473
|
-
|
|
474
|
-
\brief \ref CountingPtr is an implementation of <b>intrusive reference
|
|
475
|
-
counting</b>. This is similar, but not identical to boost or C++ TR1's \c
|
|
476
|
-
shared_ptr. Intrusive reference counting requires the counted class to contain
|
|
477
|
-
the counter, which is not required by <tt>std::shared_ptr</tt>.
|
|
478
|
-
|
|
479
|
-
Intrusive counting is often faster due to fewer cache faults. Furthermore, \ref
|
|
480
|
-
CountingPtr is a <b>single pointer</b>, whereas <tt>std::shared_ptr</tt>
|
|
481
|
-
actually contains (at least) two pointers. \ref CountingPtr also creates a lot
|
|
482
|
-
less debug info due to reduced complexity.
|
|
483
|
-
|
|
484
|
-
\ref CountingPtr is accompanied by \ref ReferenceCounter, which contains the
|
|
485
|
-
actual reference counter (a single integer). A reference counted object must
|
|
486
|
-
derive from \ref ReferenceCounter :
|
|
487
|
-
|
|
488
|
-
\code
|
|
489
|
-
struct Something : public tlx::ReferenceCounter
|
|
490
|
-
{
|
|
491
|
-
};
|
|
492
|
-
\endcode
|
|
493
|
-
|
|
494
|
-
Code that now wishes to use pointers referencing this object, will typedef an
|
|
495
|
-
\ref CountingPtr, which is used to increment and decrement the included
|
|
496
|
-
reference counter automatically.
|
|
497
|
-
|
|
498
|
-
\code
|
|
499
|
-
using SomethingPtr = tlx::CountingPtr<Something>;
|
|
500
|
-
{
|
|
501
|
-
// create new instance of something
|
|
502
|
-
SomethingPtr p1 = new something;
|
|
503
|
-
{
|
|
504
|
-
// create a new reference to the same instance (no deep copy!)
|
|
505
|
-
SomethingPtr p2 = p1;
|
|
506
|
-
// this block end will decrement the reference count, but not delete the
|
|
507
|
-
object
|
|
508
|
-
}
|
|
509
|
-
// this block end will delete the object
|
|
510
|
-
}
|
|
511
|
-
\endcode
|
|
512
|
-
|
|
513
|
-
The \ref CountingPtr can generally be used like a usual pointer or \c
|
|
514
|
-
std::shared_ptr (see the docs for more).
|
|
515
|
-
|
|
516
|
-
*/
|
|
517
|
-
|
|
518
|
-
} // namespace tlx
|
|
519
|
-
|
|
520
|
-
#endif // !TLX_COUNTING_PTR_HEADER
|
|
521
|
-
|
|
522
|
-
/******************************************************************************/
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/*******************************************************************************
|
|
2
|
-
* tlx/define/attribute_always_inline.hpp
|
|
3
|
-
*
|
|
4
|
-
* Part of tlx - http://panthema.net/tlx
|
|
5
|
-
*
|
|
6
|
-
* Copyright (C) 2015-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_DEFINE_ATTRIBUTE_ALWAYS_INLINE_HEADER
|
|
12
|
-
#define TLX_DEFINE_ATTRIBUTE_ALWAYS_INLINE_HEADER
|
|
13
|
-
|
|
14
|
-
namespace tlx {
|
|
15
|
-
|
|
16
|
-
//! \addtogroup tlx_define
|
|
17
|
-
//! \{
|
|
18
|
-
|
|
19
|
-
/******************************************************************************/
|
|
20
|
-
// __attribute__ ((always_inline))
|
|
21
|
-
|
|
22
|
-
#if defined(__GNUC__) || defined(__clang__)
|
|
23
|
-
#define TLX_ATTRIBUTE_ALWAYS_INLINE __attribute__((always_inline))
|
|
24
|
-
#else
|
|
25
|
-
#define TLX_ATTRIBUTE_ALWAYS_INLINE
|
|
26
|
-
#endif
|
|
27
|
-
|
|
28
|
-
//! \}
|
|
29
|
-
|
|
30
|
-
} // namespace tlx
|
|
31
|
-
|
|
32
|
-
#endif // !TLX_DEFINE_ATTRIBUTE_ALWAYS_INLINE_HEADER
|
|
33
|
-
|
|
34
|
-
/******************************************************************************/
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
/*******************************************************************************
|
|
2
|
-
* tlx/define/attribute_fallthrough.hpp
|
|
3
|
-
*
|
|
4
|
-
* Part of tlx - http://panthema.net/tlx
|
|
5
|
-
*
|
|
6
|
-
* Copyright (C) 2015-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_DEFINE_ATTRIBUTE_FALLTHROUGH_HEADER
|
|
12
|
-
#define TLX_DEFINE_ATTRIBUTE_FALLTHROUGH_HEADER
|
|
13
|
-
|
|
14
|
-
namespace tlx {
|
|
15
|
-
|
|
16
|
-
//! \addtogroup tlx_define
|
|
17
|
-
//! \{
|
|
18
|
-
|
|
19
|
-
/******************************************************************************/
|
|
20
|
-
// __attribute__ ((fallthrough))
|
|
21
|
-
|
|
22
|
-
#if defined(__GNUC__) && __GNUC__ >= 7
|
|
23
|
-
#define TLX_ATTRIBUTE_FALLTHROUGH __attribute__((fallthrough))
|
|
24
|
-
#elif defined(__clang__)
|
|
25
|
-
#define TLX_ATTRIBUTE_FALLTHROUGH [[clang::fallthrough]]
|
|
26
|
-
#else
|
|
27
|
-
#define TLX_ATTRIBUTE_FALLTHROUGH
|
|
28
|
-
#endif
|
|
29
|
-
|
|
30
|
-
//! \}
|
|
31
|
-
|
|
32
|
-
} // namespace tlx
|
|
33
|
-
|
|
34
|
-
#endif // !TLX_DEFINE_ATTRIBUTE_FALLTHROUGH_HEADER
|
|
35
|
-
|
|
36
|
-
/******************************************************************************/
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/*******************************************************************************
|
|
2
|
-
* tlx/define/attribute_format_printf.hpp
|
|
3
|
-
*
|
|
4
|
-
* Part of tlx - http://panthema.net/tlx
|
|
5
|
-
*
|
|
6
|
-
* Copyright (C) 2015-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_DEFINE_ATTRIBUTE_FORMAT_PRINTF_HEADER
|
|
12
|
-
#define TLX_DEFINE_ATTRIBUTE_FORMAT_PRINTF_HEADER
|
|
13
|
-
|
|
14
|
-
namespace tlx {
|
|
15
|
-
|
|
16
|
-
//! \addtogroup tlx_define
|
|
17
|
-
//! \{
|
|
18
|
-
|
|
19
|
-
/******************************************************************************/
|
|
20
|
-
// __attribute__ ((format(printf, #, #))
|
|
21
|
-
|
|
22
|
-
#if defined(__GNUC__) || defined(__clang__)
|
|
23
|
-
#define TLX_ATTRIBUTE_FORMAT_PRINTF(X, Y) __attribute__((format(printf, X, Y)))
|
|
24
|
-
#else
|
|
25
|
-
#define TLX_ATTRIBUTE_FORMAT_PRINTF(X, Y)
|
|
26
|
-
#endif
|
|
27
|
-
|
|
28
|
-
//! \}
|
|
29
|
-
|
|
30
|
-
} // namespace tlx
|
|
31
|
-
|
|
32
|
-
#endif // !TLX_DEFINE_ATTRIBUTE_FORMAT_PRINTF_HEADER
|
|
33
|
-
|
|
34
|
-
/******************************************************************************/
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/*******************************************************************************
|
|
2
|
-
* tlx/define/attribute_packed.hpp
|
|
3
|
-
*
|
|
4
|
-
* Part of tlx - http://panthema.net/tlx
|
|
5
|
-
*
|
|
6
|
-
* Copyright (C) 2015-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_DEFINE_ATTRIBUTE_PACKED_HEADER
|
|
12
|
-
#define TLX_DEFINE_ATTRIBUTE_PACKED_HEADER
|
|
13
|
-
|
|
14
|
-
namespace tlx {
|
|
15
|
-
|
|
16
|
-
//! \addtogroup tlx_define
|
|
17
|
-
//! \{
|
|
18
|
-
|
|
19
|
-
/******************************************************************************/
|
|
20
|
-
// __attribute__ ((packed))
|
|
21
|
-
|
|
22
|
-
#if defined(__GNUC__) || defined(__clang__)
|
|
23
|
-
#define TLX_ATTRIBUTE_PACKED __attribute__((packed))
|
|
24
|
-
#else
|
|
25
|
-
#define TLX_ATTRIBUTE_PACKED
|
|
26
|
-
#endif
|
|
27
|
-
|
|
28
|
-
//! \}
|
|
29
|
-
|
|
30
|
-
} // namespace tlx
|
|
31
|
-
|
|
32
|
-
#endif // !TLX_DEFINE_ATTRIBUTE_PACKED_HEADER
|
|
33
|
-
|
|
34
|
-
/******************************************************************************/
|