mangrove 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. checksums.yaml +7 -0
  2. data/.rubocop.yml +42 -0
  3. data/LICENSE +21 -0
  4. data/README.md +54 -0
  5. data/Rakefile +14 -0
  6. data/lib/mangrove/control_flow/control_signal.rb +16 -0
  7. data/lib/mangrove/control_flow/rewriter.rb +152 -0
  8. data/lib/mangrove/control_flow.rb +84 -0
  9. data/lib/mangrove/interfaces.rb +8 -0
  10. data/lib/mangrove/mangrove.rb +35 -0
  11. data/lib/mangrove/option/control_signal.rb +33 -0
  12. data/lib/mangrove/option.rb +134 -0
  13. data/lib/mangrove/result/control_signal.rb +33 -0
  14. data/lib/mangrove/result.rb +167 -0
  15. data/lib/mangrove/version.rb +6 -0
  16. data/lib/mangrove.rb +8 -0
  17. data/sig/mangrove.rbs +4 -0
  18. data/sorbet/config +4 -0
  19. data/sorbet/rbi/annotations/rainbow.rbi +269 -0
  20. data/sorbet/rbi/gems/ast@2.4.2.rbi +584 -0
  21. data/sorbet/rbi/gems/base64@0.1.1.rbi +172 -0
  22. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +1083 -0
  23. data/sorbet/rbi/gems/erubi@1.12.0.rbi +145 -0
  24. data/sorbet/rbi/gems/json@2.6.3.rbi +1533 -0
  25. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +14237 -0
  26. data/sorbet/rbi/gems/method_source@1.0.0.rbi +272 -0
  27. data/sorbet/rbi/gems/netrc@0.11.0.rbi +158 -0
  28. data/sorbet/rbi/gems/ordinare@0.4.0.rbi +77 -0
  29. data/sorbet/rbi/gems/parallel@1.23.0.rbi +273 -0
  30. data/sorbet/rbi/gems/parser@3.2.2.3.rbi +7253 -0
  31. data/sorbet/rbi/gems/prettier_print@1.2.1.rbi +951 -0
  32. data/sorbet/rbi/gems/racc@1.7.1.rbi +161 -0
  33. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +402 -0
  34. data/sorbet/rbi/gems/rake@13.0.6.rbi +3024 -0
  35. data/sorbet/rbi/gems/rbi@0.0.17.rbi +2972 -0
  36. data/sorbet/rbi/gems/regexp_parser@2.8.1.rbi +3749 -0
  37. data/sorbet/rbi/gems/rexml@3.2.6.rbi +4781 -0
  38. data/sorbet/rbi/gems/rspec-core@3.12.2.rbi +10805 -0
  39. data/sorbet/rbi/gems/rspec-expectations@3.12.3.rbi +8100 -0
  40. data/sorbet/rbi/gems/rspec-mocks@3.12.6.rbi +5310 -0
  41. data/sorbet/rbi/gems/rspec-sorbet@1.9.2.rbi +163 -0
  42. data/sorbet/rbi/gems/rspec-support@3.12.1.rbi +1609 -0
  43. data/sorbet/rbi/gems/rspec@3.12.0.rbi +82 -0
  44. data/sorbet/rbi/gems/ruboclean@0.4.0.rbi +189 -0
  45. data/sorbet/rbi/gems/rubocop-ast@1.29.0.rbi +6985 -0
  46. data/sorbet/rbi/gems/rubocop@1.56.0.rbi +56491 -0
  47. data/sorbet/rbi/gems/ruby-lsp@0.8.0.rbi +11 -0
  48. data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +1317 -0
  49. data/sorbet/rbi/gems/spoom@1.2.3.rbi +3203 -0
  50. data/sorbet/rbi/gems/syntax_tree@6.1.1.rbi +22855 -0
  51. data/sorbet/rbi/gems/tapioca@0.11.8.rbi +3349 -0
  52. data/sorbet/rbi/gems/thor@1.2.2.rbi +3965 -0
  53. data/sorbet/rbi/gems/unicode-display_width@2.4.2.rbi +65 -0
  54. data/sorbet/rbi/gems/unparser@0.6.8.rbi +4525 -0
  55. data/sorbet/rbi/gems/yard-sorbet@0.8.1.rbi +428 -0
  56. data/sorbet/rbi/gems/yard@0.9.34.rbi +18219 -0
  57. data/sorbet/rbi/shims/gems/rspec-core.rbi +12 -0
  58. data/sorbet/rbi/shims/gems/rspec-expectations.rbi +8 -0
  59. data/sorbet/rbi/shims/mangrove/option.rbi +15 -0
  60. data/sorbet/rbi/shims/mangrove/result.rbi +15 -0
  61. data/sorbet/tapioca/config.yml +13 -0
  62. data/sorbet/tapioca/require.rb +4 -0
  63. metadata +161 -0
@@ -0,0 +1,12 @@
1
+ # typed: true
2
+
3
+ class RSpec::Core::ExampleGroup
4
+ class << self
5
+ sig { params(args: T.untyped, example_group_block: T.proc.bind(T.untyped).void).void }
6
+ def describe(*args, &example_group_block); end
7
+
8
+ sig { params(all_args: T.untyped, block: T.proc.bind(RSpec::Matchers).void).void }
9
+ def it(*all_args, &block); end
10
+ end
11
+ end
12
+
@@ -0,0 +1,8 @@
1
+ # typed: true
2
+
3
+ module RSpec
4
+ class << self
5
+ sig { params(args: T.untyped, example_group_block: T.proc.bind(T.class_of(RSpec::Core::ExampleGroup)).void).void }
6
+ def describe(*args, &example_group_block); end
7
+ end
8
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+
3
+ module Mangrove
4
+ module Option
5
+ class Some
6
+ # sig { params(other: Option[InnerType]).returns(T::Boolean) }
7
+ # def ==(other); end
8
+ end
9
+
10
+ class None
11
+ # sig { params(other: Option[InnerType]).returns(T::Boolean) }
12
+ # def ==(other); end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+
3
+ module Mangrove
4
+ module Result
5
+ class Ok
6
+ # sig { params(other: Result[OkType, ErrType]).returns(T::Boolean) }
7
+ # def ==(other); end
8
+ end
9
+
10
+ class Err
11
+ # sig { params(other: Result[OkType, ErrType]).returns(T::Boolean) }
12
+ # def ==(other); end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,13 @@
1
+ gem:
2
+ # Add your `gem` command parameters here:
3
+ #
4
+ # exclude:
5
+ # - gem_name
6
+ # doc: true
7
+ # workers: 5
8
+ dsl:
9
+ # Add your `dsl` command parameters here:
10
+ #
11
+ # exclude:
12
+ # - SomeGeneratorName
13
+ # workers: 5
@@ -0,0 +1,4 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ # Add your extra requires here (`bin/tapioca require` can be used to bootstrap this list)
metadata ADDED
@@ -0,0 +1,161 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mangrove
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Kazuma Murata
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2023-08-25 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: sorbet-runtime
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: method_source
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: parser
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '3.2'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.2'
55
+ - !ruby/object:Gem::Dependency
56
+ name: unparser
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 0.6.8
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 0.6.8
69
+ description: Type Utility for Ruby.
70
+ email:
71
+ - kazzix14@gmail.com
72
+ executables: []
73
+ extensions: []
74
+ extra_rdoc_files: []
75
+ files:
76
+ - ".rubocop.yml"
77
+ - LICENSE
78
+ - README.md
79
+ - Rakefile
80
+ - lib/mangrove.rb
81
+ - lib/mangrove/control_flow.rb
82
+ - lib/mangrove/control_flow/control_signal.rb
83
+ - lib/mangrove/control_flow/rewriter.rb
84
+ - lib/mangrove/interfaces.rb
85
+ - lib/mangrove/mangrove.rb
86
+ - lib/mangrove/option.rb
87
+ - lib/mangrove/option/control_signal.rb
88
+ - lib/mangrove/result.rb
89
+ - lib/mangrove/result/control_signal.rb
90
+ - lib/mangrove/version.rb
91
+ - sig/mangrove.rbs
92
+ - sorbet/config
93
+ - sorbet/rbi/annotations/rainbow.rbi
94
+ - sorbet/rbi/gems/ast@2.4.2.rbi
95
+ - sorbet/rbi/gems/base64@0.1.1.rbi
96
+ - sorbet/rbi/gems/diff-lcs@1.5.0.rbi
97
+ - sorbet/rbi/gems/erubi@1.12.0.rbi
98
+ - sorbet/rbi/gems/json@2.6.3.rbi
99
+ - sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi
100
+ - sorbet/rbi/gems/method_source@1.0.0.rbi
101
+ - sorbet/rbi/gems/netrc@0.11.0.rbi
102
+ - sorbet/rbi/gems/ordinare@0.4.0.rbi
103
+ - sorbet/rbi/gems/parallel@1.23.0.rbi
104
+ - sorbet/rbi/gems/parser@3.2.2.3.rbi
105
+ - sorbet/rbi/gems/prettier_print@1.2.1.rbi
106
+ - sorbet/rbi/gems/racc@1.7.1.rbi
107
+ - sorbet/rbi/gems/rainbow@3.1.1.rbi
108
+ - sorbet/rbi/gems/rake@13.0.6.rbi
109
+ - sorbet/rbi/gems/rbi@0.0.17.rbi
110
+ - sorbet/rbi/gems/regexp_parser@2.8.1.rbi
111
+ - sorbet/rbi/gems/rexml@3.2.6.rbi
112
+ - sorbet/rbi/gems/rspec-core@3.12.2.rbi
113
+ - sorbet/rbi/gems/rspec-expectations@3.12.3.rbi
114
+ - sorbet/rbi/gems/rspec-mocks@3.12.6.rbi
115
+ - sorbet/rbi/gems/rspec-sorbet@1.9.2.rbi
116
+ - sorbet/rbi/gems/rspec-support@3.12.1.rbi
117
+ - sorbet/rbi/gems/rspec@3.12.0.rbi
118
+ - sorbet/rbi/gems/ruboclean@0.4.0.rbi
119
+ - sorbet/rbi/gems/rubocop-ast@1.29.0.rbi
120
+ - sorbet/rbi/gems/rubocop@1.56.0.rbi
121
+ - sorbet/rbi/gems/ruby-lsp@0.8.0.rbi
122
+ - sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi
123
+ - sorbet/rbi/gems/spoom@1.2.3.rbi
124
+ - sorbet/rbi/gems/syntax_tree@6.1.1.rbi
125
+ - sorbet/rbi/gems/tapioca@0.11.8.rbi
126
+ - sorbet/rbi/gems/thor@1.2.2.rbi
127
+ - sorbet/rbi/gems/unicode-display_width@2.4.2.rbi
128
+ - sorbet/rbi/gems/unparser@0.6.8.rbi
129
+ - sorbet/rbi/gems/yard-sorbet@0.8.1.rbi
130
+ - sorbet/rbi/gems/yard@0.9.34.rbi
131
+ - sorbet/rbi/shims/gems/rspec-core.rbi
132
+ - sorbet/rbi/shims/gems/rspec-expectations.rbi
133
+ - sorbet/rbi/shims/mangrove/option.rbi
134
+ - sorbet/rbi/shims/mangrove/result.rbi
135
+ - sorbet/tapioca/config.yml
136
+ - sorbet/tapioca/require.rb
137
+ homepage: https://github.com/kazzix14/mangrove
138
+ licenses: []
139
+ metadata:
140
+ homepage_uri: https://github.com/kazzix14/mangrove
141
+ source_code_uri: https://github.com/kazzix14/mangrove
142
+ post_install_message:
143
+ rdoc_options: []
144
+ require_paths:
145
+ - lib
146
+ required_ruby_version: !ruby/object:Gem::Requirement
147
+ requirements:
148
+ - - ">="
149
+ - !ruby/object:Gem::Version
150
+ version: 3.2.0
151
+ required_rubygems_version: !ruby/object:Gem::Requirement
152
+ requirements:
153
+ - - ">="
154
+ - !ruby/object:Gem::Version
155
+ version: '0'
156
+ requirements: []
157
+ rubygems_version: 3.4.18
158
+ signing_key:
159
+ specification_version: 4
160
+ summary: Type Utility for Ruby.
161
+ test_files: []