disjoint_interval_tree 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.
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative 'lib/disjoint_interval_tree/version'
4
+
5
+ Gem::Specification.new do |spec|
6
+ spec.name = 'disjoint_interval_tree'
7
+ spec.version = DisjointIntervalTree::VERSION
8
+ spec.authors = ['Romain PEREIRA']
9
+ spec.email = ['romain.pereira@inria.fr', 'rpereira@anl.gov']
10
+
11
+ spec.summary = 'Disjoint interval tree, in C, with Ruby bindings'
12
+ spec.description = <<~DESC
13
+ A set of pairwise disjoint half-open intervals [a..b[, backed by an
14
+ augmented AVL tree written in C. Insertion, point lookup, intersection
15
+ queries and range removal are all logarithmic. Each node caches the hull of
16
+ the subtree it roots, so intersection queries prune whole subtrees in O(1).
17
+ DESC
18
+
19
+ spec.homepage = 'https://github.com/anlsys/ruby-disjoint-interval-tree'
20
+ spec.license = 'CECILL-C'
21
+ spec.required_ruby_version = '>= 2.7.0'
22
+
23
+ spec.files = Dir[
24
+ 'lib/**/*.rb',
25
+ 'ext/**/*.{c,h,rb}',
26
+ 'test/**/*.{c,rb}',
27
+ 'test/c/Makefile',
28
+ 'CITATION.cff',
29
+ 'README.md',
30
+ 'Rakefile',
31
+ 'disjoint_interval_tree.gemspec'
32
+ ]
33
+
34
+ spec.require_paths = ['lib']
35
+ spec.extensions = ['ext/disjoint_interval_tree/extconf.rb']
36
+
37
+ spec.metadata = {
38
+ 'source_code_uri' => spec.homepage,
39
+ 'bug_tracker_uri' => "#{spec.homepage}/issues",
40
+ 'rubygems_mfa_required' => 'true'
41
+ }
42
+ end