primitive 1.0.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 (105) hide show
  1. checksums.yaml +7 -0
  2. data/.bundle/config +2 -0
  3. data/.editorconfig +8 -0
  4. data/.github/workflows/ci.yaml +29 -0
  5. data/.gitignore +7 -0
  6. data/.rubocop.yml +16 -0
  7. data/.tool-versions +1 -0
  8. data/CHANGELOG.md +7 -0
  9. data/CODE_OF_CONDUCT.md +73 -0
  10. data/Gemfile +5 -0
  11. data/Guardfile +17 -0
  12. data/LICENSE +5 -0
  13. data/README.md +107 -0
  14. data/Rakefile +12 -0
  15. data/bin/_guard-core +27 -0
  16. data/bin/bundle +109 -0
  17. data/bin/bundle-audit +27 -0
  18. data/bin/bundler-audit +27 -0
  19. data/bin/coderay +27 -0
  20. data/bin/guard +27 -0
  21. data/bin/htmldiff +27 -0
  22. data/bin/ldiff +27 -0
  23. data/bin/listen +27 -0
  24. data/bin/pry +27 -0
  25. data/bin/racc +27 -0
  26. data/bin/rake +27 -0
  27. data/bin/rspec +27 -0
  28. data/bin/rubocop +27 -0
  29. data/bin/ruby-parse +27 -0
  30. data/bin/ruby-rewrite +27 -0
  31. data/bin/spoom +27 -0
  32. data/bin/srb +27 -0
  33. data/bin/srb-rbi +27 -0
  34. data/bin/tapioca +27 -0
  35. data/bin/thor +27 -0
  36. data/bin/yard +27 -0
  37. data/bin/yardoc +27 -0
  38. data/bin/yri +27 -0
  39. data/lib/primitive/entity.rb +50 -0
  40. data/lib/primitive/version.rb +6 -0
  41. data/lib/primitive.rb +6 -0
  42. data/primitive.gemspec +45 -0
  43. data/sorbet/config +4 -0
  44. data/sorbet/rbi/annotations/.gitattributes +1 -0
  45. data/sorbet/rbi/annotations/rainbow.rbi +269 -0
  46. data/sorbet/rbi/gems/.gitattributes +1 -0
  47. data/sorbet/rbi/gems/ansi@1.5.0.rbi +8 -0
  48. data/sorbet/rbi/gems/ast@2.4.2.rbi +584 -0
  49. data/sorbet/rbi/gems/bundler-audit@0.9.1.rbi +8 -0
  50. data/sorbet/rbi/gems/coderay@1.1.3.rbi +8 -0
  51. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +8 -0
  52. data/sorbet/rbi/gems/docile@1.4.0.rbi +8 -0
  53. data/sorbet/rbi/gems/erubi@1.12.0.rbi +145 -0
  54. data/sorbet/rbi/gems/ffi@1.16.3.rbi +8 -0
  55. data/sorbet/rbi/gems/formatador@1.1.0.rbi +8 -0
  56. data/sorbet/rbi/gems/guard-compat@1.2.1.rbi +66 -0
  57. data/sorbet/rbi/gems/guard-rspec@4.7.3.rbi +562 -0
  58. data/sorbet/rbi/gems/guard@2.18.1.rbi +8 -0
  59. data/sorbet/rbi/gems/json@2.7.1.rbi +1561 -0
  60. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +8 -0
  61. data/sorbet/rbi/gems/listen@3.8.0.rbi +8 -0
  62. data/sorbet/rbi/gems/lumberjack@1.2.9.rbi +8 -0
  63. data/sorbet/rbi/gems/method_source@1.0.0.rbi +8 -0
  64. data/sorbet/rbi/gems/nenv@0.3.0.rbi +8 -0
  65. data/sorbet/rbi/gems/netrc@0.11.0.rbi +158 -0
  66. data/sorbet/rbi/gems/notiffany@0.1.3.rbi +8 -0
  67. data/sorbet/rbi/gems/parallel@1.24.0.rbi +280 -0
  68. data/sorbet/rbi/gems/parser@3.3.0.5.rbi +5472 -0
  69. data/sorbet/rbi/gems/prism@0.27.0.rbi +35611 -0
  70. data/sorbet/rbi/gems/pry@0.14.2.rbi +8 -0
  71. data/sorbet/rbi/gems/racc@1.7.3.rbi +161 -0
  72. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +8 -0
  73. data/sorbet/rbi/gems/rake@13.1.0.rbi +3027 -0
  74. data/sorbet/rbi/gems/rb-fsevent@0.11.2.rbi +8 -0
  75. data/sorbet/rbi/gems/rb-inotify@0.10.1.rbi +8 -0
  76. data/sorbet/rbi/gems/rbi@0.1.12.rbi +3071 -0
  77. data/sorbet/rbi/gems/regexp_parser@2.9.0.rbi +8 -0
  78. data/sorbet/rbi/gems/rexml@3.2.6.rbi +8 -0
  79. data/sorbet/rbi/gems/rspec-core@3.12.2.rbi +8 -0
  80. data/sorbet/rbi/gems/rspec-expectations@3.12.3.rbi +8 -0
  81. data/sorbet/rbi/gems/rspec-mocks@3.12.6.rbi +8 -0
  82. data/sorbet/rbi/gems/rspec-support@3.12.1.rbi +8 -0
  83. data/sorbet/rbi/gems/rspec@3.12.0.rbi +8 -0
  84. data/sorbet/rbi/gems/rubocop-ast@1.30.0.rbi +8 -0
  85. data/sorbet/rbi/gems/rubocop-capybara@2.19.0.rbi +8 -0
  86. data/sorbet/rbi/gems/rubocop-factory_bot@2.24.0.rbi +8 -0
  87. data/sorbet/rbi/gems/rubocop-rake@0.6.0.rbi +8 -0
  88. data/sorbet/rbi/gems/rubocop-rspec@2.24.1.rbi +8 -0
  89. data/sorbet/rbi/gems/rubocop@1.60.2.rbi +8 -0
  90. data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +8 -0
  91. data/sorbet/rbi/gems/shellany@0.0.1.rbi +8 -0
  92. data/sorbet/rbi/gems/simplecov-console@0.9.1.rbi +102 -0
  93. data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +8 -0
  94. data/sorbet/rbi/gems/simplecov@0.22.0.rbi +2148 -0
  95. data/sorbet/rbi/gems/simplecov_json_formatter@0.1.4.rbi +8 -0
  96. data/sorbet/rbi/gems/spoom@1.3.2.rbi +4420 -0
  97. data/sorbet/rbi/gems/tapioca@0.13.3.rbi +3520 -0
  98. data/sorbet/rbi/gems/terminal-table@3.0.2.rbi +8 -0
  99. data/sorbet/rbi/gems/thor@1.3.1.rbi +4318 -0
  100. data/sorbet/rbi/gems/unicode-display_width@2.5.0.rbi +8 -0
  101. data/sorbet/rbi/gems/yard-sorbet@0.8.1.rbi +428 -0
  102. data/sorbet/rbi/gems/yard@0.9.36.rbi +18085 -0
  103. data/sorbet/tapioca/config.yml +13 -0
  104. data/sorbet/tapioca/require.rb +4 -0
  105. metadata +363 -0
data/bin/racc ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'racc' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("racc", "racc")
data/bin/rake ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'rake' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("rake", "rake")
data/bin/rspec ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'rspec' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("rspec-core", "rspec")
data/bin/rubocop ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'rubocop' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("rubocop", "rubocop")
data/bin/ruby-parse ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'ruby-parse' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("parser", "ruby-parse")
data/bin/ruby-rewrite ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'ruby-rewrite' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("parser", "ruby-rewrite")
data/bin/spoom ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'spoom' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("spoom", "spoom")
data/bin/srb ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'srb' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("sorbet", "srb")
data/bin/srb-rbi ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'srb-rbi' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("sorbet", "srb-rbi")
data/bin/tapioca ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'tapioca' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("tapioca", "tapioca")
data/bin/thor ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'thor' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("thor", "thor")
data/bin/yard ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'yard' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("yard", "yard")
data/bin/yardoc ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'yardoc' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("yard", "yardoc")
data/bin/yri ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'yri' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300).include?("This file was generated by Bundler")
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("yard", "yri")
@@ -0,0 +1,50 @@
1
+ # typed: strict
2
+ # frozen_string_literal: true
3
+
4
+ module Primitive
5
+ # Base class for uniquely identifiable classes. Subclasses are simply based on a string-based ID
6
+ # and comparison/sorting/equality will be done in a case-insensitive manner.
7
+ class Entity
8
+ extend T::Sig
9
+ include Comparable
10
+
11
+ sig { returns(String) }
12
+ attr_reader :id
13
+
14
+ sig { params(id: String).void }
15
+ def initialize(id = '')
16
+ @id = id
17
+ end
18
+
19
+ sig { params(other: Entity).returns(T.nilable(Integer)) }
20
+ def <=>(other)
21
+ comparable_id <=> other.comparable_id
22
+ end
23
+
24
+ sig { params(other: Entity).returns(T::Boolean) }
25
+ def ==(other)
26
+ comparable_id == other.comparable_id
27
+ end
28
+ alias eql? ==
29
+
30
+ sig { returns(Integer) }
31
+ def hash
32
+ comparable_id.hash
33
+ end
34
+
35
+ sig { returns(String) }
36
+ def to_s
37
+ id
38
+ end
39
+
40
+ sig { returns(String) }
41
+ def comparable_id
42
+ id.upcase
43
+ end
44
+
45
+ private
46
+
47
+ sig { params(id: String).returns(String) }
48
+ attr_writer :id
49
+ end
50
+ end
@@ -0,0 +1,6 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+ module Primitive
5
+ VERSION = '1.0.0'
6
+ end
data/lib/primitive.rb ADDED
@@ -0,0 +1,6 @@
1
+ # typed: strict
2
+ # frozen_string_literal: true
3
+
4
+ require 'sorbet-runtime-stub' unless defined?(T)
5
+
6
+ require_relative 'primitive/entity'
data/primitive.gemspec ADDED
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ require './lib/primitive/version'
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = 'primitive'
7
+ s.version = Primitive::VERSION
8
+ s.summary = 'Root objects used in object modeling within a domain context.'
9
+ s.description = 'The most reusable components from several domain-focused libraries will be extracted here as a common consumption point.'
10
+
11
+ s.authors = ['Matthew Ruggio']
12
+ s.email = ['mattruggio@icloud.com']
13
+ s.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
14
+ s.bindir = 'exe'
15
+ s.executables = %w[]
16
+ s.homepage = 'https://github.com/mattruggio/primitive'
17
+ s.license = 'MIT'
18
+ s.metadata = {
19
+ 'bug_tracker_uri' => 'https://github.com/mattruggio/primitive/issues',
20
+ 'changelog_uri' => 'https://github.com/mattruggio/primitive/blob/main/CHANGELOG.md',
21
+ 'documentation_uri' => 'https://www.rubydoc.info/gems/primitive',
22
+ 'homepage_uri' => s.homepage,
23
+ 'source_code_uri' => s.homepage,
24
+ 'rubygems_mfa_required' => 'true'
25
+ }
26
+
27
+ s.required_ruby_version = '>= 2.7.6'
28
+
29
+ s.add_runtime_dependency('sorbet-runtime-stub')
30
+
31
+ s.add_development_dependency('bundler-audit')
32
+ s.add_development_dependency('guard-rspec')
33
+ s.add_development_dependency('pry')
34
+ s.add_development_dependency('rake')
35
+ s.add_development_dependency('rspec')
36
+ s.add_development_dependency('rubocop')
37
+ s.add_development_dependency('rubocop-rake')
38
+ s.add_development_dependency('rubocop-rspec')
39
+ s.add_development_dependency('rubocop-sorbet')
40
+ s.add_development_dependency('simplecov')
41
+ s.add_development_dependency('simplecov-console')
42
+ s.add_development_dependency('sorbet')
43
+ s.add_development_dependency('sorbet-runtime')
44
+ s.add_development_dependency('tapioca')
45
+ end
data/sorbet/config ADDED
@@ -0,0 +1,4 @@
1
+ --dir
2
+ .
3
+ --ignore=tmp/
4
+ --ignore=vendor/
@@ -0,0 +1 @@
1
+ **/*.rbi linguist-vendored=true