git: 221ac7c3f423 - main - devel/rubygem-pairing_heap: Add rubygem-pairing_heap 0.3.0
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 31 Aug 2022 18:50:33 UTC
The branch main has been updated by sunpoet:
URL: https://cgit.FreeBSD.org/ports/commit/?id=221ac7c3f4234f323dd8644baab9079e6353cda9
commit 221ac7c3f4234f323dd8644baab9079e6353cda9
Author: Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2022-08-31 18:06:33 +0000
Commit: Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2022-08-31 18:49:28 +0000
devel/rubygem-pairing_heap: Add rubygem-pairing_heap 0.3.0
PairingHeap is a pure Ruby priority queue implementation using a pairing heap as
the underlying data structure. While a pairing heap is asymptotically less
efficient than the Fibonacci heap, it is usually faster in practice. This makes
it a popular choice for Prim's MST or Dijkstra's algorithm implementations.
PairingHeap is currently being used as the priority queue data structure in RGL.
Also implementation without priority change support is
provided(SimplePairingHeap), while the asymptotical complexity of the methods
stay the same, bookkeeping of elements is not needed making, the constant
smaller.
WWW: https://github.com/mhib/pairing_heap
---
devel/Makefile | 1 +
devel/rubygem-pairing_heap/Makefile | 17 +++++++++++++++++
devel/rubygem-pairing_heap/distinfo | 3 +++
devel/rubygem-pairing_heap/pkg-descr | 13 +++++++++++++
4 files changed, 34 insertions(+)
diff --git a/devel/Makefile b/devel/Makefile
index 23cb44d00fd5..203c44ff677e 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -6729,6 +6729,7 @@
SUBDIR += rubygem-ostruct
SUBDIR += rubygem-p4ruby
SUBDIR += rubygem-paint
+ SUBDIR += rubygem-pairing_heap
SUBDIR += rubygem-paperclip-rails5
SUBDIR += rubygem-paperclip-rails50
SUBDIR += rubygem-parser
diff --git a/devel/rubygem-pairing_heap/Makefile b/devel/rubygem-pairing_heap/Makefile
new file mode 100644
index 000000000000..9a4c3055bcc1
--- /dev/null
+++ b/devel/rubygem-pairing_heap/Makefile
@@ -0,0 +1,17 @@
+PORTNAME= pairing_heap
+PORTVERSION= 0.3.0
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Performant priority queue with support for changing priority
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
+
+USES= gem
+USE_RUBY= yes
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-pairing_heap/distinfo b/devel/rubygem-pairing_heap/distinfo
new file mode 100644
index 000000000000..212ff36dc267
--- /dev/null
+++ b/devel/rubygem-pairing_heap/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1661950808
+SHA256 (rubygem/pairing_heap-0.3.0.gem) = 2854a7bd7aa16f86945c816bd8235c633387716b0b594ee77d8b21f709c8cadd
+SIZE (rubygem/pairing_heap-0.3.0.gem) = 12800
diff --git a/devel/rubygem-pairing_heap/pkg-descr b/devel/rubygem-pairing_heap/pkg-descr
new file mode 100644
index 000000000000..be11d15daf61
--- /dev/null
+++ b/devel/rubygem-pairing_heap/pkg-descr
@@ -0,0 +1,13 @@
+PairingHeap is a pure Ruby priority queue implementation using a pairing heap as
+the underlying data structure. While a pairing heap is asymptotically less
+efficient than the Fibonacci heap, it is usually faster in practice. This makes
+it a popular choice for Prim's MST or Dijkstra's algorithm implementations.
+
+PairingHeap is currently being used as the priority queue data structure in RGL.
+
+Also implementation without priority change support is
+provided(SimplePairingHeap), while the asymptotical complexity of the methods
+stay the same, bookkeeping of elements is not needed making, the constant
+smaller.
+
+WWW: https://github.com/mhib/pairing_heap