dry-monads-sorbet 1.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.
- checksums.yaml +7 -0
- data/.github/workflows/ci.yml +52 -0
- data/.gitignore +20 -0
- data/.reek.yml +32 -0
- data/.rspec +3 -0
- data/.rubocop.yml +66 -0
- data/.ruby-version +1 -0
- data/CHANGELOG.md +7 -0
- data/Gemfile +25 -0
- data/LICENSE.txt +21 -0
- data/README.md +80 -0
- data/Rakefile +6 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/dry-monads-sorbet.gemspec +39 -0
- data/lib/bundled_rbi/dry-monads.rbi +1109 -0
- data/lib/dry-monads-sorbet.rb +5 -0
- data/lib/dry-monads-sorbet/Rakefile +2 -0
- data/lib/dry-monads-sorbet/railtie.rb +14 -0
- data/lib/dry-monads-sorbet/tasks/dry_monads_sorbet.rake +25 -0
- data/lib/dry/monads/sorbet.rb +19 -0
- data/lib/dry/monads/sorbet/version.rb +9 -0
- data/rbi/dry-monads.rbi +593 -0
- metadata +167 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 3c5965a0f167ece1beaf05b22c473323d653e4b6c34600b01890127264186368
|
4
|
+
data.tar.gz: 290798ca858d2101ead489df61ba3321eebad985145ac19f04aa78bd810ef9ff
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 45cf68ceaed400c7b1baed20b7085cfc664ea4a1e554a9078a55b5d7252ca391a8011155482fa6165ca5530c92d402b55a38e30489016a79ea26277d5514bdb3
|
7
|
+
data.tar.gz: b56702acd5840bf58fbfcff813ce4bf954d7967b9882f614af9261a8e6367baed03ea445bea5adc40e467ec5ea81924b3dee32761c464fbf990a9d83ce0508d2
|
@@ -0,0 +1,52 @@
|
|
1
|
+
---
|
2
|
+
name: Continuous Integration
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches-ignore:
|
6
|
+
- refs/tags/*_staging
|
7
|
+
- refs/tags/*_production
|
8
|
+
jobs:
|
9
|
+
build:
|
10
|
+
runs-on: ubuntu-18.04
|
11
|
+
steps:
|
12
|
+
- name: Checkout branch
|
13
|
+
uses: actions/checkout@v2
|
14
|
+
- name: Extract branch name
|
15
|
+
shell: bash
|
16
|
+
run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
|
17
|
+
id: extract_branch
|
18
|
+
- name: Install Linux dependencies
|
19
|
+
run: sudo apt-get update -qq && sudo apt-get install -y libsqlite3-dev
|
20
|
+
- name: Set up Ruby
|
21
|
+
uses: actions/setup-ruby@v1.1.1
|
22
|
+
with:
|
23
|
+
ruby-version: 2.6.6
|
24
|
+
- name: Cache gems
|
25
|
+
uses: actions/cache@v1
|
26
|
+
with:
|
27
|
+
path: vendor/bundle
|
28
|
+
key: "${{ runner.OS }}-gem-cache-${{ hashFiles('**/dry-monads-sorbet.gemspec')
|
29
|
+
}}"
|
30
|
+
restore-keys: "${{ runner.OS }}-gem-cache-\n"
|
31
|
+
- name: Install bundler
|
32
|
+
run: (bundler -v | grep "2.1.4") || gem install bundler:2.1.4
|
33
|
+
- name: Install gems
|
34
|
+
run: bundle install --jobs $(nproc) --retry 3 --without metrics --path vendor/bundle
|
35
|
+
- name: Create cache directory
|
36
|
+
run: mkdir -p tmp/cache
|
37
|
+
- name: Run RSpec test suite
|
38
|
+
run: bundle exec rspec spec
|
39
|
+
env:
|
40
|
+
METRICS: '1'
|
41
|
+
- name: Post to Slack if build fails
|
42
|
+
if: failure() && (github.ref == 'refs/heads/master' || github.ref == 'refs/heads/stable')
|
43
|
+
uses: pullreminders/slack-action@master
|
44
|
+
env:
|
45
|
+
SLACK_BOT_TOKEN: "${{ secrets.SLACK_BOT_TOKEN }}"
|
46
|
+
with:
|
47
|
+
args: '{\"channel\":\"C33574SJJ\",\"text\":\"* ${{ github.repository }} BUILD
|
48
|
+
FAILURE*\", \"attachments\": [{ \"fallback\": \"Failure summary\", \"color\":
|
49
|
+
\"#ff0000\", \"fields\": [{\"title\": \"Branch\", \"value\":\"${{ steps.extract_branch.outputs.branch
|
50
|
+
}}\"}, {\"title\": \"Who broke it\", \"value\":\"${{ github.actor }}\"},
|
51
|
+
{ \"title\": \"Build output\", \"value\": \"https://github.com/${{ github.repository
|
52
|
+
}}/commit/${{ github.sha }}/checks\", \"short\": false }]}]}'
|
data/.gitignore
ADDED
data/.reek.yml
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
---
|
2
|
+
detectors:
|
3
|
+
IrresponsibleModule:
|
4
|
+
enabled: false
|
5
|
+
TooManyStatements:
|
6
|
+
enabled: true
|
7
|
+
max_statements: 10
|
8
|
+
NilCheck:
|
9
|
+
enabled: false
|
10
|
+
directories:
|
11
|
+
app/controllers:
|
12
|
+
NestedIterators:
|
13
|
+
max_allowed_nesting: 2
|
14
|
+
UnusedPrivateMethod:
|
15
|
+
enabled: false
|
16
|
+
app/helpers:
|
17
|
+
UtilityFunction:
|
18
|
+
enabled: false
|
19
|
+
exclude_paths:
|
20
|
+
- app/assets
|
21
|
+
- bin
|
22
|
+
- client/node_modules
|
23
|
+
- config
|
24
|
+
- coverage
|
25
|
+
- data
|
26
|
+
- db
|
27
|
+
- dw
|
28
|
+
- log
|
29
|
+
- phrase
|
30
|
+
- public
|
31
|
+
- tmp
|
32
|
+
- vendor
|
data/.rspec
ADDED
data/.rubocop.yml
ADDED
@@ -0,0 +1,66 @@
|
|
1
|
+
---
|
2
|
+
Documentation:
|
3
|
+
Enabled: false
|
4
|
+
Rails:
|
5
|
+
Enabled: true
|
6
|
+
AllCops:
|
7
|
+
Include:
|
8
|
+
- app/**/*.rb
|
9
|
+
- lib/**/*.rb
|
10
|
+
- spec/**/*.rb
|
11
|
+
Exclude:
|
12
|
+
- app/assets/**/*
|
13
|
+
- bin/**/*
|
14
|
+
- client/node_modules/**/*
|
15
|
+
- config/**/*
|
16
|
+
- coverage/**/*
|
17
|
+
- data/**/*
|
18
|
+
- db/**/*
|
19
|
+
- db_*/**/*
|
20
|
+
- dw/**/*
|
21
|
+
- log/**/*
|
22
|
+
- phrase/**/*
|
23
|
+
- public/**/*
|
24
|
+
- tmp/**/*
|
25
|
+
- vendor/**/*
|
26
|
+
TargetRubyVersion: 2.5
|
27
|
+
Metrics/LineLength:
|
28
|
+
Max: 100
|
29
|
+
Layout/MultilineMethodCallIndentation:
|
30
|
+
EnforcedStyle: indented
|
31
|
+
Style/PercentLiteralDelimiters:
|
32
|
+
PreferredDelimiters:
|
33
|
+
"%w": "[]"
|
34
|
+
RSpec/ExampleLength:
|
35
|
+
Enabled: false
|
36
|
+
Max: 10
|
37
|
+
RSpec/MultipleExpectations:
|
38
|
+
Enabled: false
|
39
|
+
Max: 10
|
40
|
+
RSpec/NestedGroups:
|
41
|
+
Enabled: false
|
42
|
+
Max: 10
|
43
|
+
RSpec/MessageExpectation:
|
44
|
+
Enabled: false
|
45
|
+
RSpec/MissingExampleGroupArgument:
|
46
|
+
Enabled: false
|
47
|
+
require:
|
48
|
+
- rubocop-performance
|
49
|
+
- rubocop-rspec
|
50
|
+
- test_prof/rubocop
|
51
|
+
Metrics/BlockLength:
|
52
|
+
Enabled: false
|
53
|
+
RSpec/MessageSpies:
|
54
|
+
Enabled: false
|
55
|
+
RSpec/ExpectInHook:
|
56
|
+
Enabled: false
|
57
|
+
RSpec/AggregateFailures:
|
58
|
+
Enabled: true
|
59
|
+
Include:
|
60
|
+
- spec/**/*.rb
|
61
|
+
Rails/InverseOf:
|
62
|
+
Enabled: false
|
63
|
+
Rails/Present:
|
64
|
+
Enabled: false
|
65
|
+
Rails/TimeZone:
|
66
|
+
Enabled: false
|
data/.ruby-version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
2.7.1
|
data/CHANGELOG.md
ADDED
data/Gemfile
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
source 'https://rubygems.org'
|
2
|
+
|
3
|
+
# Specify your gem's dependencies in rspec-sorbet.gemspec
|
4
|
+
gemspec
|
5
|
+
|
6
|
+
group :development, :test do
|
7
|
+
gem 'guard-livereload', require: false
|
8
|
+
gem 'guard-rspec'
|
9
|
+
gem 'pry-byebug'
|
10
|
+
gem 'rb-fsevent', require: false
|
11
|
+
gem 'rb-readline'
|
12
|
+
gem 'reek'
|
13
|
+
gem 'rspec'
|
14
|
+
gem 'rubocop-rspec'
|
15
|
+
gem 'rubocop'
|
16
|
+
gem 'shoulda-matchers', require: false
|
17
|
+
gem 'sqlite3'
|
18
|
+
gem 'stackprof'
|
19
|
+
gem 'timecop'
|
20
|
+
end
|
21
|
+
|
22
|
+
group :test do
|
23
|
+
gem 'ffaker'
|
24
|
+
gem 'simplecov'
|
25
|
+
end
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
The MIT License (MIT)
|
2
|
+
|
3
|
+
Copyright (c) 2019 Samuel Giles
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
13
|
+
all copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,80 @@
|
|
1
|
+

|
2
|
+
|
3
|
+
# Dry Monads Sorbet 
|
4
|
+
|
5
|
+
Sorbet type hints for Dry::Monads.
|
6
|
+
|
7
|
+
This gem is very small, it opens up the `Dry::Monads::Result` and `Dry::Monads::Maybe` classes to add type members
|
8
|
+
that are subsequently referred to in a bundled `.rbi` file for the `dry-monads` gem.
|
9
|
+
|
10
|
+
The bundled rbi annotations are installed/updated via a rake task included in the gem.
|
11
|
+
|
12
|
+
## Installation
|
13
|
+
|
14
|
+
Add the gem to your Gemfile:
|
15
|
+
|
16
|
+
`gem 'dry-monads-sorbet'`
|
17
|
+
|
18
|
+
### Copying the bundled RBI
|
19
|
+
|
20
|
+
You must copy in the bundled `.rbi` file that this gem maintains to add type annotations to your own project to type check your usage of `Dry::Monads`.
|
21
|
+
|
22
|
+
Following in the footsteps of `sorbet-rails` we've extracted this process to a rake task.
|
23
|
+
|
24
|
+
### In a Rails project:
|
25
|
+
|
26
|
+
The rake task that copies the bundled `.rbi` files into your project should already be loaded. You can run it by entering:
|
27
|
+
|
28
|
+
```bash
|
29
|
+
bundle exec rake dry_monads_sorbet:update_rbi
|
30
|
+
```
|
31
|
+
|
32
|
+
### Outside of Rails projects:
|
33
|
+
|
34
|
+
Include the `Rakefile` in your own projects `Rakefile` to get access to the rbi update command:
|
35
|
+
|
36
|
+
```ruby
|
37
|
+
require 'dry-monads-sorbet'
|
38
|
+
|
39
|
+
spec = Gem::Specification.find_by_name 'dry-monads-sorbet'
|
40
|
+
rakefile = "#{spec.gem_dir}/lib/dry-monads-sorbet/Rakefile"
|
41
|
+
load rakefile
|
42
|
+
```
|
43
|
+
|
44
|
+
After including the Rakefile you should then have access to the task as described in the Rails project section.
|
45
|
+
|
46
|
+
## Usage
|
47
|
+
|
48
|
+
Usage is fairly simple, just annotate your methods as follows:
|
49
|
+
|
50
|
+
```ruby
|
51
|
+
require 'dry/monads/sorbet'
|
52
|
+
|
53
|
+
class MyLoginService
|
54
|
+
extend T::Sig
|
55
|
+
|
56
|
+
sig{params(username: String).returns(Dry::Monads::Result[StandardError, String])}
|
57
|
+
def check_username(username)
|
58
|
+
case username
|
59
|
+
when 'samuelgiles93'
|
60
|
+
Dry::Monads::Success('Hi Sam!')
|
61
|
+
else
|
62
|
+
Dry::Monads::Failure(
|
63
|
+
StandardError.new('Unauthorised')
|
64
|
+
)
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
sig{params(username: String).returns(Dry::Monads::Maybe[Integer])}
|
69
|
+
def find_fullname(username)
|
70
|
+
case username
|
71
|
+
when 'samuelgiles93'
|
72
|
+
Dry::Monads::Some('Samuel Giles')
|
73
|
+
else
|
74
|
+
Dry::Monads::None()
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
78
|
+
```
|
79
|
+
|
80
|
+
With the type annotations in place you'll get type errors when you attempt to say call a method that doesn't exist on the `Some` of a `Maybe` or the `Success` of a `Result`.
|
data/Rakefile
ADDED
data/bin/console
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'bundler/setup'
|
4
|
+
require 'dry/monads/sorbet'
|
5
|
+
|
6
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
7
|
+
# with your gem easier. You can also use a different console, if you like.
|
8
|
+
|
9
|
+
# (If you use this, don't forget to add pry to your Gemfile!)
|
10
|
+
# require "pry"
|
11
|
+
# Pry.start
|
12
|
+
|
13
|
+
require 'irb'
|
14
|
+
IRB.start(__FILE__)
|
data/bin/setup
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
lib = File.expand_path('lib', __dir__)
|
2
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
3
|
+
|
4
|
+
require 'dry/monads/sorbet/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = 'dry-monads-sorbet'
|
8
|
+
spec.version = Dry::Monads::Sorbet::VERSION
|
9
|
+
spec.authors = ['Luke Worth']
|
10
|
+
spec.email = ['luke.worth@bellroy.com']
|
11
|
+
|
12
|
+
spec.summary = 'Sorbet type hints for Dry::Monads'
|
13
|
+
spec.homepage = 'https://github.com/tricycle/dry-monads-sorbet'
|
14
|
+
spec.license = 'MIT'
|
15
|
+
|
16
|
+
# Specify which files should be added to the gem when it is released.
|
17
|
+
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
18
|
+
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
19
|
+
f.match(%r{^spec/}) && !f.match(%r{^spec/support/factories/})
|
20
|
+
end
|
21
|
+
spec.bindir = 'exe'
|
22
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
23
|
+
spec.require_paths = ['lib']
|
24
|
+
spec.post_install_message = <<~TEXT
|
25
|
+
dry-monads-sorbet has been installed/updated.
|
26
|
+
|
27
|
+
This gem ships with a bundled rbi file that must be copied into your project.
|
28
|
+
You can use the included "dry_monads_sorbet:update_rbi" to do this.
|
29
|
+
TEXT
|
30
|
+
|
31
|
+
spec.add_dependency 'sorbet'
|
32
|
+
spec.add_dependency 'sorbet-runtime'
|
33
|
+
spec.add_dependency 'dry-monads'
|
34
|
+
|
35
|
+
spec.add_development_dependency 'bundler'
|
36
|
+
spec.add_development_dependency 'pry'
|
37
|
+
spec.add_development_dependency 'rake', '>= 13.0'
|
38
|
+
spec.add_development_dependency 'rspec', '>= 3.0'
|
39
|
+
end
|
@@ -0,0 +1,1109 @@
|
|
1
|
+
# typed: strong
|
2
|
+
#
|
3
|
+
# This rbi file is bundled in the dry-monads-sorbet gem and is copied down
|
4
|
+
# into projects using the dry_monads_sorbet:update_rbi rake task.
|
5
|
+
#
|
6
|
+
# Any changes to the type annotations for Dry::Monads should be made
|
7
|
+
# in the dry-monads-sorbet gem itself in its bundled_rbi directory.
|
8
|
+
|
9
|
+
module Dry
|
10
|
+
end
|
11
|
+
module Dry::Monads
|
12
|
+
def self.Result(error, **options); end
|
13
|
+
def self.[](*monads); end
|
14
|
+
def self.all_loaded?; end
|
15
|
+
def self.constructors; end
|
16
|
+
def self.included(base); end
|
17
|
+
def self.known_monads; end
|
18
|
+
def self.load_monad(name); end
|
19
|
+
def self.register_mixin(name, mod); end
|
20
|
+
def self.registry; end
|
21
|
+
def self.registry=(registry); end
|
22
|
+
extend Dry::Monads::Maybe::Mixin::Constructors
|
23
|
+
extend Dry::Monads::Maybe::Mixin::Constructors
|
24
|
+
extend Dry::Monads::Result::Mixin::Constructors
|
25
|
+
extend Dry::Monads::Validated::Mixin::Constructors
|
26
|
+
end
|
27
|
+
module Dry::Monads::Curry
|
28
|
+
def self.call(value); end
|
29
|
+
end
|
30
|
+
class Dry::Monads::UnwrapError < StandardError
|
31
|
+
def initialize(ctx); end
|
32
|
+
end
|
33
|
+
class Dry::Monads::InvalidFailureTypeError < StandardError
|
34
|
+
def initialize(failure); end
|
35
|
+
end
|
36
|
+
class Dry::Monads::ConstructorNotAppliedError < NoMethodError
|
37
|
+
def initialize(method_name, constructor_name); end
|
38
|
+
end
|
39
|
+
module Dry::Monads::Transformer
|
40
|
+
def fmap2(*args); end
|
41
|
+
def fmap3(*args); end
|
42
|
+
end
|
43
|
+
class Dry::Monads::Maybe
|
44
|
+
extend T::Sig
|
45
|
+
extend T::Generic
|
46
|
+
extend T::Helpers
|
47
|
+
|
48
|
+
Elem = type_member
|
49
|
+
|
50
|
+
abstract!
|
51
|
+
sealed!
|
52
|
+
|
53
|
+
sig do
|
54
|
+
type_parameters(:New)
|
55
|
+
.params(blk: T.proc.params(arg0: Elem).returns(Dry::Monads::Maybe[T.type_parameter(:out, :New)]))
|
56
|
+
.returns(Dry::Monads::Maybe[T.type_parameter(:out, :New)])
|
57
|
+
end
|
58
|
+
def bind(&blk); end
|
59
|
+
|
60
|
+
sig do
|
61
|
+
type_parameters(:New)
|
62
|
+
.params(blk: T.proc.params(arg0: Elem).returns(T.type_parameter(:out, :New)))
|
63
|
+
.returns(Dry::Monads::Maybe[T.type_parameter(:out, :New)])
|
64
|
+
end
|
65
|
+
def fmap(&blk); end
|
66
|
+
|
67
|
+
sig do
|
68
|
+
params(val: T.any(Elem, NilClass),
|
69
|
+
blk: T.nilable(T.proc.returns(Elem)))
|
70
|
+
.returns(Elem)
|
71
|
+
end
|
72
|
+
def value_or(val = nil, &blk); end
|
73
|
+
|
74
|
+
sig do
|
75
|
+
params(arg0: T.untyped)
|
76
|
+
.returns(T.self_type)
|
77
|
+
end
|
78
|
+
def or(*arg0); end
|
79
|
+
|
80
|
+
sig do
|
81
|
+
type_parameters(:Error)
|
82
|
+
.params(val: T.nilable(T.type_parameter(:Error)),
|
83
|
+
blk: T.nilable(T.proc.returns(T.type_parameter(:Error))))
|
84
|
+
.returns(Dry::Monads::Result[T.type_parameter(:out, :Error), Elem])
|
85
|
+
end
|
86
|
+
def to_result(val = nil, &blk); end
|
87
|
+
|
88
|
+
def failure?; end
|
89
|
+
def monad; end
|
90
|
+
def none?; end
|
91
|
+
def self.coerce(value); end
|
92
|
+
def self.lift(*args, &block); end
|
93
|
+
def self.pure(value = nil, &block); end
|
94
|
+
def self.to_proc; end
|
95
|
+
def some?; end
|
96
|
+
def success?; end
|
97
|
+
def to_maybe; end
|
98
|
+
def to_monad; end
|
99
|
+
include Dry::Monads::Transformer
|
100
|
+
end
|
101
|
+
class Dry::Monads::Maybe::Some < Dry::Monads::Maybe
|
102
|
+
extend T::Sig
|
103
|
+
extend T::Generic
|
104
|
+
Elem = type_member
|
105
|
+
|
106
|
+
sig {params(value: Elem).void}
|
107
|
+
def initialize(value = nil); end
|
108
|
+
|
109
|
+
sig do
|
110
|
+
returns(Elem)
|
111
|
+
end
|
112
|
+
def value!; end
|
113
|
+
|
114
|
+
def inspect; end
|
115
|
+
def maybe(*args, &block); end
|
116
|
+
def self.[](*value); end
|
117
|
+
def self.call(*arg0); end
|
118
|
+
def self.to_proc; end
|
119
|
+
def to_s; end
|
120
|
+
include Anonymous_Dry_Equalizer_33
|
121
|
+
include Dry::Equalizer::Methods
|
122
|
+
end
|
123
|
+
module Anonymous_Dry_Equalizer_33
|
124
|
+
def cmp?(comparator, other); end
|
125
|
+
def hash; end
|
126
|
+
def inspect; end
|
127
|
+
end
|
128
|
+
class Dry::Monads::Maybe::None < Dry::Monads::Maybe
|
129
|
+
extend T::Sig
|
130
|
+
extend T::Generic
|
131
|
+
Elem = type_member
|
132
|
+
|
133
|
+
def ==(other); end
|
134
|
+
def deconstruct; end
|
135
|
+
def eql?(other); end
|
136
|
+
def hash; end
|
137
|
+
sig {params().void}
|
138
|
+
def initialize(); end
|
139
|
+
def inspect; end
|
140
|
+
def maybe(*arg0); end
|
141
|
+
def or(*args); end
|
142
|
+
def or_fmap(*args, &block); end
|
143
|
+
def self.instance; end
|
144
|
+
def self.method_missing(m, *arg1); end
|
145
|
+
def to_s; end
|
146
|
+
def trace; end
|
147
|
+
include Dry::Core::Constants
|
148
|
+
end
|
149
|
+
module Dry::Monads::Maybe::Mixin
|
150
|
+
include Dry::Monads::Maybe::Mixin::Constructors
|
151
|
+
end
|
152
|
+
module Dry::Monads::Maybe::Mixin::Constructors
|
153
|
+
sig {type_parameters(:T).params(value: T.nilable(T.type_parameter(:T))).returns(Dry::Monads::Maybe[T.type_parameter(:T)])}
|
154
|
+
def Maybe(value); end
|
155
|
+
sig {type_parameters(:T).params().returns(Dry::Monads::Maybe[T.type_parameter(:out, :T)])}
|
156
|
+
def None; end
|
157
|
+
sig {type_parameters(:T).params(value: T.type_parameter(:T)).returns(Dry::Monads::Maybe[T.type_parameter(:T)])}
|
158
|
+
def Some(value = nil); end
|
159
|
+
end
|
160
|
+
module Dry::Monads::Maybe::Hash
|
161
|
+
def self.all(hash, trace = nil); end
|
162
|
+
def self.filter(hash); end
|
163
|
+
end
|
164
|
+
class Dry::Monads::Result
|
165
|
+
extend T::Sig
|
166
|
+
extend T::Generic
|
167
|
+
extend T::Helpers
|
168
|
+
|
169
|
+
FailureType = type_member
|
170
|
+
SuccessType = type_member
|
171
|
+
|
172
|
+
abstract!
|
173
|
+
sealed!
|
174
|
+
|
175
|
+
sig do
|
176
|
+
type_parameters(:NewSuccessType)
|
177
|
+
.params(blk: T.proc.params(arg0: SuccessType).returns(Dry::Monads::Result[FailureType, T.type_parameter(:out, :NewSuccessType)]))
|
178
|
+
.returns(Dry::Monads::Result[FailureType, T.type_parameter(:out, :NewSuccessType)])
|
179
|
+
end
|
180
|
+
def bind(&blk); end
|
181
|
+
|
182
|
+
sig do
|
183
|
+
type_parameters(:New)
|
184
|
+
.params(blk: T.proc.params(arg0: SuccessType).returns(T.type_parameter(:out, :New)))
|
185
|
+
.returns(Dry::Monads::Result[FailureType, T.type_parameter(:out, :New)])
|
186
|
+
end
|
187
|
+
def fmap(&blk); end
|
188
|
+
|
189
|
+
sig do
|
190
|
+
type_parameters(:Val)
|
191
|
+
.params(val: T.nilable(T.type_parameter(:Val)), blk: T.nilable(T.proc.params(arg0: FailureType).returns(T.type_parameter(:Val))))
|
192
|
+
.returns(T.any(SuccessType, T.type_parameter(:Val)))
|
193
|
+
end
|
194
|
+
def value_or(val = nil, &blk); end
|
195
|
+
|
196
|
+
sig do
|
197
|
+
returns(SuccessType)
|
198
|
+
end
|
199
|
+
def value!; end
|
200
|
+
def to_maybe; end
|
201
|
+
def either(f, _); end
|
202
|
+
|
203
|
+
sig {returns(T::Boolean)}
|
204
|
+
def success?; end
|
205
|
+
|
206
|
+
sig {returns(T::Boolean)}
|
207
|
+
def failure?; end
|
208
|
+
|
209
|
+
sig {returns(FailureType)}
|
210
|
+
def failure; end
|
211
|
+
|
212
|
+
sig do
|
213
|
+
type_parameters(:NewFailureType)
|
214
|
+
.params(blk: T.proc.params(arg0: FailureType).returns(Dry::Monads::Result[T.type_parameter(:out, :NewFailureType), SuccessType]))
|
215
|
+
.returns(Dry::Monads::Result[T.type_parameter(:out, :NewFailureType), SuccessType])
|
216
|
+
end
|
217
|
+
def or(&blk); end
|
218
|
+
|
219
|
+
def monad; end
|
220
|
+
def self.pure(value = nil, &block); end
|
221
|
+
def success; end
|
222
|
+
def to_monad; end
|
223
|
+
def to_result; end
|
224
|
+
include Anonymous_Module_34
|
225
|
+
include Dry::Monads::Transformer
|
226
|
+
end
|
227
|
+
class Dry::Monads::Result::Success < Dry::Monads::Result
|
228
|
+
extend T::Sig
|
229
|
+
extend T::Generic
|
230
|
+
FailureType = type_member
|
231
|
+
SuccessType = type_member
|
232
|
+
|
233
|
+
def flip; end
|
234
|
+
def initialize(value); end
|
235
|
+
def inspect; end
|
236
|
+
def result(_, f); end
|
237
|
+
def self.[](*value); end
|
238
|
+
def self.call(*arg0); end
|
239
|
+
def self.to_proc; end
|
240
|
+
def success; end
|
241
|
+
def to_s; end
|
242
|
+
def to_validated; end
|
243
|
+
include Anonymous_Dry_Equalizer_35
|
244
|
+
include Dry::Equalizer::Methods
|
245
|
+
end
|
246
|
+
class Dry::Monads::Result::Failure < Dry::Monads::Result
|
247
|
+
extend T::Sig
|
248
|
+
extend T::Generic
|
249
|
+
FailureType = type_member
|
250
|
+
SuccessType = type_member
|
251
|
+
|
252
|
+
def ===(other); end
|
253
|
+
def failure; end
|
254
|
+
def flip; end
|
255
|
+
def initialize(value, trace = nil); end
|
256
|
+
def inspect; end
|
257
|
+
def or_fmap(*args, &block); end
|
258
|
+
def result(f, _); end
|
259
|
+
def self.[](*value); end
|
260
|
+
def self.call(*arg0); end
|
261
|
+
def self.to_proc; end
|
262
|
+
def to_s; end
|
263
|
+
def to_validated; end
|
264
|
+
def trace; end
|
265
|
+
def value_or(val = nil); end
|
266
|
+
include Anonymous_Dry_Equalizer_36
|
267
|
+
include Dry::Equalizer::Methods
|
268
|
+
end
|
269
|
+
class Dry::Monads::Task
|
270
|
+
def ==(other); end
|
271
|
+
def apply(val = nil); end
|
272
|
+
def bind(&block); end
|
273
|
+
def compare_promises(x, y); end
|
274
|
+
def complete?; end
|
275
|
+
def curry(value); end
|
276
|
+
def discard; end
|
277
|
+
def fmap(&block); end
|
278
|
+
def initialize(promise); end
|
279
|
+
def inspect; end
|
280
|
+
def monad; end
|
281
|
+
def or(&block); end
|
282
|
+
def or_fmap(&block); end
|
283
|
+
def promise; end
|
284
|
+
def self.[](executor, &block); end
|
285
|
+
def self.failed(exc); end
|
286
|
+
def self.new(promise = nil, &block); end
|
287
|
+
def self.pure(value = nil, &block); end
|
288
|
+
def then(&block); end
|
289
|
+
def to_maybe; end
|
290
|
+
def to_monad; end
|
291
|
+
def to_result; end
|
292
|
+
def to_s; end
|
293
|
+
def value!; end
|
294
|
+
def value_or(&block); end
|
295
|
+
def wait(timeout = nil); end
|
296
|
+
include Anonymous_Module_37
|
297
|
+
end
|
298
|
+
class Dry::Monads::Try
|
299
|
+
def error?; end
|
300
|
+
def exception; end
|
301
|
+
def failure?; end
|
302
|
+
def self.[](*exceptions, &block); end
|
303
|
+
def self.lift(*args, &block); end
|
304
|
+
def self.pure(value = nil, exceptions = nil, &block); end
|
305
|
+
def self.run(exceptions, f); end
|
306
|
+
def success?; end
|
307
|
+
def to_monad; end
|
308
|
+
def value?; end
|
309
|
+
include Anonymous_Module_38
|
310
|
+
end
|
311
|
+
class Dry::Monads::Try::Value < Dry::Monads::Try
|
312
|
+
extend T::Generic
|
313
|
+
FailureType = type_member
|
314
|
+
SuccessType = type_member
|
315
|
+
|
316
|
+
def bind(*args); end
|
317
|
+
def bind_call(*args, **kwargs); end
|
318
|
+
def catchable; end
|
319
|
+
def fmap(*args, &block); end
|
320
|
+
def initialize(exceptions, value); end
|
321
|
+
def inspect; end
|
322
|
+
def self.call(*arg0); end
|
323
|
+
def self.to_proc; end
|
324
|
+
def to_maybe; end
|
325
|
+
def to_result; end
|
326
|
+
def to_s; end
|
327
|
+
include Anonymous_Dry_Equalizer_39
|
328
|
+
include Dry::Equalizer::Methods
|
329
|
+
end
|
330
|
+
class Dry::Monads::Try::Error < Dry::Monads::Try
|
331
|
+
extend T::Generic
|
332
|
+
FailureType = type_member
|
333
|
+
SuccessType = type_member
|
334
|
+
|
335
|
+
def ===(other); end
|
336
|
+
def initialize(exception); end
|
337
|
+
def inspect; end
|
338
|
+
def or(*args); end
|
339
|
+
def self.call(*arg0); end
|
340
|
+
def to_maybe; end
|
341
|
+
def to_result; end
|
342
|
+
def to_s; end
|
343
|
+
include Anonymous_Dry_Equalizer_40
|
344
|
+
include Dry::Equalizer::Methods
|
345
|
+
end
|
346
|
+
class Dry::Monads::Validated
|
347
|
+
def bind(*arg0); end
|
348
|
+
def self.pure(value = nil, &block); end
|
349
|
+
def to_monad; end
|
350
|
+
include Anonymous_Module_41
|
351
|
+
end
|
352
|
+
class Dry::Monads::Validated::Valid < Dry::Monads::Validated
|
353
|
+
def ===(other); end
|
354
|
+
def alt_map(_ = nil); end
|
355
|
+
def apply(val = nil); end
|
356
|
+
def fmap(proc = nil, &block); end
|
357
|
+
def initialize(value); end
|
358
|
+
def inspect; end
|
359
|
+
def or(_ = nil); end
|
360
|
+
def to_maybe; end
|
361
|
+
def to_result; end
|
362
|
+
def to_s; end
|
363
|
+
def value!; end
|
364
|
+
include Anonymous_Dry_Equalizer_42
|
365
|
+
include Dry::Equalizer::Methods
|
366
|
+
end
|
367
|
+
class Dry::Monads::Validated::Invalid < Dry::Monads::Validated
|
368
|
+
def ===(other); end
|
369
|
+
def alt_map(proc = nil, &block); end
|
370
|
+
def apply(val = nil); end
|
371
|
+
def error; end
|
372
|
+
def fmap(_ = nil); end
|
373
|
+
def initialize(error, trace = nil); end
|
374
|
+
def inspect; end
|
375
|
+
def or(proc = nil, &block); end
|
376
|
+
def to_maybe; end
|
377
|
+
def to_result; end
|
378
|
+
def to_s; end
|
379
|
+
def trace; end
|
380
|
+
include Anonymous_Dry_Equalizer_43
|
381
|
+
include Dry::Equalizer::Methods
|
382
|
+
end
|
383
|
+
module Dry::Monads::ConversionStubs
|
384
|
+
def self.[](*method_names); end
|
385
|
+
end
|
386
|
+
module Dry::Monads::ConversionStubs::Methods
|
387
|
+
def self.to_maybe; end
|
388
|
+
def self.to_result; end
|
389
|
+
def self.to_validated; end
|
390
|
+
def to_maybe; end
|
391
|
+
def to_result; end
|
392
|
+
def to_validated; end
|
393
|
+
end
|
394
|
+
class Dry::Monads::Task::Promise < Concurrent::Promise
|
395
|
+
def on_fulfill(result); end
|
396
|
+
def on_reject(reason); end
|
397
|
+
end
|
398
|
+
module Anonymous_Module_37
|
399
|
+
def to_maybe(*arg0); end
|
400
|
+
def to_result(*arg0); end
|
401
|
+
end
|
402
|
+
module Dry::Monads::Task::Mixin
|
403
|
+
def self.[](executor); end
|
404
|
+
include Dry::Monads::Task::Mixin::Constructors
|
405
|
+
end
|
406
|
+
module Dry::Monads::Task::Mixin::Constructors
|
407
|
+
def Task(&block); end
|
408
|
+
end
|
409
|
+
module Anonymous_Module_34
|
410
|
+
def to_maybe(*arg0); end
|
411
|
+
def to_validated(*arg0); end
|
412
|
+
end
|
413
|
+
module Anonymous_Dry_Equalizer_35
|
414
|
+
def cmp?(comparator, other); end
|
415
|
+
def hash; end
|
416
|
+
def inspect; end
|
417
|
+
end
|
418
|
+
module Anonymous_Dry_Equalizer_36
|
419
|
+
def cmp?(comparator, other); end
|
420
|
+
def hash; end
|
421
|
+
def inspect; end
|
422
|
+
end
|
423
|
+
module Dry::Monads::Result::Mixin
|
424
|
+
include Dry::Monads::Result::Mixin::Constructors
|
425
|
+
end
|
426
|
+
module Dry::Monads::Result::Mixin::Constructors
|
427
|
+
sig do
|
428
|
+
type_parameters(:FailureType, :SuccessType)
|
429
|
+
.params(value: T.nilable(T.type_parameter(:FailureType)),
|
430
|
+
block: T.nilable(T.untyped))
|
431
|
+
.returns(Dry::Monads::Result[T.type_parameter(:FailureType),
|
432
|
+
T.type_parameter(:out, :SuccessType)])
|
433
|
+
end
|
434
|
+
def Failure(value = nil, &block); end
|
435
|
+
|
436
|
+
sig do
|
437
|
+
type_parameters(:FailureType, :SuccessType)
|
438
|
+
.params(value: T.nilable(T.type_parameter(:SuccessType)),
|
439
|
+
block: T.nilable(T.untyped))
|
440
|
+
.returns(Dry::Monads::Result[T.type_parameter(:out, :FailureType),
|
441
|
+
T.type_parameter(:SuccessType)])
|
442
|
+
end
|
443
|
+
def Success(value = nil, &block); end
|
444
|
+
end
|
445
|
+
module Anonymous_Module_38
|
446
|
+
def to_maybe(*arg0); end
|
447
|
+
def to_result(*arg0); end
|
448
|
+
end
|
449
|
+
module Anonymous_Dry_Equalizer_39
|
450
|
+
def cmp?(comparator, other); end
|
451
|
+
def hash; end
|
452
|
+
def inspect; end
|
453
|
+
end
|
454
|
+
module Anonymous_Dry_Equalizer_40
|
455
|
+
def cmp?(comparator, other); end
|
456
|
+
def hash; end
|
457
|
+
def inspect; end
|
458
|
+
end
|
459
|
+
module Dry::Monads::Try::Mixin
|
460
|
+
def Error(error = nil, &block); end
|
461
|
+
def Value(value = nil, exceptions = nil, &block); end
|
462
|
+
include Dry::Monads::Try::Mixin::Constructors
|
463
|
+
end
|
464
|
+
module Dry::Monads::Try::Mixin::Constructors
|
465
|
+
def Try(*exceptions, &f); end
|
466
|
+
end
|
467
|
+
module Anonymous_Module_41
|
468
|
+
def to_maybe(*arg0); end
|
469
|
+
def to_result(*arg0); end
|
470
|
+
end
|
471
|
+
module Anonymous_Dry_Equalizer_42
|
472
|
+
def cmp?(comparator, other); end
|
473
|
+
def hash; end
|
474
|
+
def inspect; end
|
475
|
+
end
|
476
|
+
module Anonymous_Dry_Equalizer_43
|
477
|
+
def cmp?(comparator, other); end
|
478
|
+
def hash; end
|
479
|
+
def inspect; end
|
480
|
+
end
|
481
|
+
module Dry::Monads::Validated::Mixin
|
482
|
+
include Dry::Monads::Validated::Mixin::Constructors
|
483
|
+
end
|
484
|
+
module Dry::Monads::Validated::Mixin::Constructors
|
485
|
+
def Invalid(value = nil, &block); end
|
486
|
+
def Valid(value = nil, &block); end
|
487
|
+
end
|
488
|
+
class Dry::Monads::List
|
489
|
+
def +(other); end
|
490
|
+
def apply(list = nil); end
|
491
|
+
def bind(*args); end
|
492
|
+
def coerce(other); end
|
493
|
+
def collect; end
|
494
|
+
def deconstruct; end
|
495
|
+
def empty?; end
|
496
|
+
def filter; end
|
497
|
+
def first; end
|
498
|
+
def fmap(*args); end
|
499
|
+
def fold_left(initial); end
|
500
|
+
def fold_right(initial); end
|
501
|
+
def foldl(initial); end
|
502
|
+
def foldr(initial); end
|
503
|
+
def head; end
|
504
|
+
def initialize(value, type = nil); end
|
505
|
+
def inspect; end
|
506
|
+
def last; end
|
507
|
+
def map(&block); end
|
508
|
+
def monad; end
|
509
|
+
def reduce(initial); end
|
510
|
+
def reverse; end
|
511
|
+
def select; end
|
512
|
+
def self.[](*values); end
|
513
|
+
def self.coerce(value, type = nil); end
|
514
|
+
def self.pure(value = nil, type = nil, &block); end
|
515
|
+
def self.unfold(state, type = nil); end
|
516
|
+
def size; end
|
517
|
+
def sort; end
|
518
|
+
def tail; end
|
519
|
+
def to_a; end
|
520
|
+
def to_ary; end
|
521
|
+
def to_monad; end
|
522
|
+
def to_s; end
|
523
|
+
def traverse(proc = nil, &block); end
|
524
|
+
def type; end
|
525
|
+
def typed(type = nil); end
|
526
|
+
def typed?; end
|
527
|
+
def value; end
|
528
|
+
extend Anonymous_Dry_Core_Deprecations_Tagged_44
|
529
|
+
extend Dry::Core::Deprecations::Interface
|
530
|
+
include Anonymous_Dry_Equalizer_45
|
531
|
+
include Dry::Equalizer::Methods
|
532
|
+
include Dry::Monads::Transformer
|
533
|
+
end
|
534
|
+
module Anonymous_Dry_Core_Deprecations_Tagged_44
|
535
|
+
end
|
536
|
+
module Anonymous_Dry_Equalizer_45
|
537
|
+
def cmp?(comparator, other); end
|
538
|
+
def hash; end
|
539
|
+
def inspect; end
|
540
|
+
end
|
541
|
+
class Dry::Monads::List::ListBuilder
|
542
|
+
def [](*args); end
|
543
|
+
def coerce(value); end
|
544
|
+
def initialize(type); end
|
545
|
+
def pure(val = nil, &block); end
|
546
|
+
def self.[](*arg0); end
|
547
|
+
def type; end
|
548
|
+
end
|
549
|
+
module Dry::Monads::List::Mixin
|
550
|
+
def List(value); end
|
551
|
+
end
|
552
|
+
module Dry::Monads::Do
|
553
|
+
def self.coerce_to_monad(monads); end
|
554
|
+
def self.for(*methods); end
|
555
|
+
def self.halt(result); end
|
556
|
+
def self.included(base); end
|
557
|
+
def self.wrap_method(target, method_name); end
|
558
|
+
extend Dry::Monads::Do::Mixin
|
559
|
+
end
|
560
|
+
module Dry::Monads::Do::Mixin
|
561
|
+
def bind(monads); end
|
562
|
+
def call; end
|
563
|
+
end
|
564
|
+
class Dry::Monads::Do::Halt < StandardError
|
565
|
+
def initialize(result); end
|
566
|
+
def result; end
|
567
|
+
end
|
568
|
+
module Dry::Monads::Do::All
|
569
|
+
def self.included(base); end
|
570
|
+
extend Dry::Monads::Do::All::InstanceMixin
|
571
|
+
end
|
572
|
+
class Dry::Monads::Do::All::MethodTracker < Module
|
573
|
+
def extend_object(target); end
|
574
|
+
def initialize(wrappers); end
|
575
|
+
def wrap_method(target, method); end
|
576
|
+
def wrappers; end
|
577
|
+
end
|
578
|
+
module Dry::Monads::Do::All::InstanceMixin
|
579
|
+
def extended(object); end
|
580
|
+
end
|
581
|
+
class Dry::Monads::Lazy < Dry::Monads::Task
|
582
|
+
def force!; end
|
583
|
+
def force; end
|
584
|
+
def inspect; end
|
585
|
+
def self.[](executor, &block); end
|
586
|
+
def self.new(promise = nil, &block); end
|
587
|
+
def to_s; end
|
588
|
+
def value!; end
|
589
|
+
end
|
590
|
+
module Dry::Monads::Lazy::Mixin
|
591
|
+
include Dry::Monads::Lazy::Mixin::Constructors
|
592
|
+
end
|
593
|
+
module Dry::Monads::Lazy::Mixin::Constructors
|
594
|
+
def Lazy(&block); end
|
595
|
+
end
|
596
|
+
class Dry::Monads::Result::Fixed < Module
|
597
|
+
def included(base); end
|
598
|
+
def initialize(error, **options); end
|
599
|
+
def self.[](error, **options); end
|
600
|
+
end
|
601
|
+
# This file is autogenerated. Do not edit it by hand. Regenerate it with:
|
602
|
+
# srb rbi gems
|
603
|
+
|
604
|
+
# typed: true
|
605
|
+
#
|
606
|
+
# If you would like to make changes to this file, great! Please create the gem's shim here:
|
607
|
+
#
|
608
|
+
# https://github.com/sorbet/sorbet-typed/new/master?filename=lib/dry-monads/all/dry-monads.rbi
|
609
|
+
#
|
610
|
+
# dry-monads-1.3.5
|
611
|
+
module Dry
|
612
|
+
end
|
613
|
+
module Dry::Monads
|
614
|
+
def self.Result(error, **options); end
|
615
|
+
def self.[](*monads); end
|
616
|
+
def self.all_loaded?; end
|
617
|
+
def self.constructors; end
|
618
|
+
def self.included(base); end
|
619
|
+
def self.known_monads; end
|
620
|
+
def self.load_monad(name); end
|
621
|
+
def self.register_mixin(name, mod); end
|
622
|
+
def self.registry; end
|
623
|
+
def self.registry=(registry); end
|
624
|
+
extend Dry::Monads::Maybe::Mixin::Constructors
|
625
|
+
extend Dry::Monads::Maybe::Mixin::Constructors
|
626
|
+
extend Dry::Monads::Result::Mixin::Constructors
|
627
|
+
extend Dry::Monads::Validated::Mixin::Constructors
|
628
|
+
include Dry::Core::Constants
|
629
|
+
end
|
630
|
+
module Dry::Monads::Curry
|
631
|
+
def self.call(value); end
|
632
|
+
end
|
633
|
+
class Dry::Monads::UnwrapError < StandardError
|
634
|
+
def initialize(ctx); end
|
635
|
+
end
|
636
|
+
class Dry::Monads::InvalidFailureTypeError < StandardError
|
637
|
+
def initialize(failure); end
|
638
|
+
end
|
639
|
+
class Dry::Monads::ConstructorNotAppliedError < NoMethodError
|
640
|
+
def initialize(method_name, constructor_name); end
|
641
|
+
end
|
642
|
+
module Dry::Monads::RightBiased
|
643
|
+
end
|
644
|
+
module Dry::Monads::RightBiased::Right
|
645
|
+
def ===(other); end
|
646
|
+
def and(mb); end
|
647
|
+
def apply(val = nil); end
|
648
|
+
def bind(*args, **kwargs); end
|
649
|
+
def curry; end
|
650
|
+
def deconstruct; end
|
651
|
+
def deconstruct_keys(keys); end
|
652
|
+
def destructure(*args, **kwargs); end
|
653
|
+
def discard; end
|
654
|
+
def flatten; end
|
655
|
+
def fmap(*arg0); end
|
656
|
+
def or(*arg0); end
|
657
|
+
def or_fmap(*arg0); end
|
658
|
+
def self.included(m); end
|
659
|
+
def tee(*args, &block); end
|
660
|
+
def value!; end
|
661
|
+
def value_or(_val = nil); end
|
662
|
+
end
|
663
|
+
module Dry::Monads::RightBiased::Left
|
664
|
+
def and(_); end
|
665
|
+
def apply(*arg0); end
|
666
|
+
def bind(*arg0); end
|
667
|
+
def deconstruct; end
|
668
|
+
def deconstruct_keys(keys); end
|
669
|
+
def discard; end
|
670
|
+
def flatten; end
|
671
|
+
def fmap(*arg0); end
|
672
|
+
def or(*arg0); end
|
673
|
+
def or_fmap(*arg0); end
|
674
|
+
def self.trace_caller; end
|
675
|
+
def tee(*arg0); end
|
676
|
+
def value!; end
|
677
|
+
def value_or(val = nil); end
|
678
|
+
end
|
679
|
+
module Dry::Monads::Transformer
|
680
|
+
def fmap2(*args); end
|
681
|
+
def fmap3(*args); end
|
682
|
+
end
|
683
|
+
class Dry::Monads::Maybe
|
684
|
+
def failure?; end
|
685
|
+
def monad; end
|
686
|
+
def none?; end
|
687
|
+
def self.coerce(value); end
|
688
|
+
def self.lift(*args, &block); end
|
689
|
+
def self.pure(value = nil, &block); end
|
690
|
+
def self.to_proc; end
|
691
|
+
def some?; end
|
692
|
+
def success?; end
|
693
|
+
def to_maybe; end
|
694
|
+
def to_monad; end
|
695
|
+
include Dry::Monads::Transformer
|
696
|
+
end
|
697
|
+
class Dry::Monads::Maybe::Some < Dry::Monads::Maybe
|
698
|
+
def fmap(*args, &block); end
|
699
|
+
def initialize(value = nil); end
|
700
|
+
def inspect; end
|
701
|
+
def maybe(*args, &block); end
|
702
|
+
def self.[](*value); end
|
703
|
+
def self.call(*arg0); end
|
704
|
+
def self.to_proc; end
|
705
|
+
def to_result(_fail = nil); end
|
706
|
+
def to_s; end
|
707
|
+
include Anonymous_Dry_Equalizer_40
|
708
|
+
include Dry::Equalizer::Methods
|
709
|
+
include Dry::Monads::RightBiased::Right
|
710
|
+
end
|
711
|
+
module Anonymous_Dry_Equalizer_40
|
712
|
+
def cmp?(comparator, other); end
|
713
|
+
def hash; end
|
714
|
+
def inspect; end
|
715
|
+
end
|
716
|
+
class Dry::Monads::Maybe::None < Dry::Monads::Maybe
|
717
|
+
def ==(other); end
|
718
|
+
def deconstruct; end
|
719
|
+
def eql?(other); end
|
720
|
+
def hash; end
|
721
|
+
def initialize(trace = nil); end
|
722
|
+
def inspect; end
|
723
|
+
def maybe(*arg0); end
|
724
|
+
def or(*args); end
|
725
|
+
def or_fmap(*args, &block); end
|
726
|
+
def self.instance; end
|
727
|
+
def self.method_missing(m, *arg1); end
|
728
|
+
def to_result(fail = nil); end
|
729
|
+
def to_s; end
|
730
|
+
def trace; end
|
731
|
+
include Dry::Monads::RightBiased::Left
|
732
|
+
end
|
733
|
+
module Dry::Monads::Maybe::Mixin
|
734
|
+
include Dry::Monads::Maybe::Mixin::Constructors
|
735
|
+
end
|
736
|
+
module Dry::Monads::Maybe::Mixin::Constructors
|
737
|
+
def Maybe(value); end
|
738
|
+
def None; end
|
739
|
+
def Some(value = nil, &block); end
|
740
|
+
end
|
741
|
+
module Dry::Monads::Maybe::Hash
|
742
|
+
def self.all(hash, trace = nil); end
|
743
|
+
def self.filter(hash); end
|
744
|
+
end
|
745
|
+
class Dry::Monads::Result
|
746
|
+
def failure; end
|
747
|
+
def monad; end
|
748
|
+
def self.pure(value = nil, &block); end
|
749
|
+
def success; end
|
750
|
+
def to_monad; end
|
751
|
+
def to_result; end
|
752
|
+
include Anonymous_Module_41
|
753
|
+
include Dry::Monads::Transformer
|
754
|
+
end
|
755
|
+
class Dry::Monads::Result::Success < Dry::Monads::Result
|
756
|
+
def either(f, _); end
|
757
|
+
def failure?; end
|
758
|
+
def flip; end
|
759
|
+
def fmap(*args, &block); end
|
760
|
+
def initialize(value); end
|
761
|
+
def inspect; end
|
762
|
+
def result(_, f); end
|
763
|
+
def self.[](*value); end
|
764
|
+
def self.call(*arg0); end
|
765
|
+
def self.to_proc; end
|
766
|
+
def success; end
|
767
|
+
def success?; end
|
768
|
+
def to_maybe; end
|
769
|
+
def to_s; end
|
770
|
+
def to_validated; end
|
771
|
+
include Anonymous_Dry_Equalizer_42
|
772
|
+
include Dry::Equalizer::Methods
|
773
|
+
include Dry::Monads::RightBiased::Right
|
774
|
+
end
|
775
|
+
class Dry::Monads::Result::Failure < Dry::Monads::Result
|
776
|
+
def ===(other); end
|
777
|
+
def either(_, g); end
|
778
|
+
def failure; end
|
779
|
+
def failure?; end
|
780
|
+
def flip; end
|
781
|
+
def initialize(value, trace = nil); end
|
782
|
+
def inspect; end
|
783
|
+
def or(*args); end
|
784
|
+
def or_fmap(*args, &block); end
|
785
|
+
def result(f, _); end
|
786
|
+
def self.[](*value); end
|
787
|
+
def self.call(*arg0); end
|
788
|
+
def self.to_proc; end
|
789
|
+
def success?; end
|
790
|
+
def to_maybe; end
|
791
|
+
def to_s; end
|
792
|
+
def to_validated; end
|
793
|
+
def trace; end
|
794
|
+
def value_or(val = nil); end
|
795
|
+
include Anonymous_Dry_Equalizer_43
|
796
|
+
include Dry::Equalizer::Methods
|
797
|
+
include Dry::Monads::RightBiased::Left
|
798
|
+
end
|
799
|
+
class Dry::Monads::Task
|
800
|
+
def ==(other); end
|
801
|
+
def apply(val = nil); end
|
802
|
+
def bind(&block); end
|
803
|
+
def compare_promises(x, y); end
|
804
|
+
def complete?; end
|
805
|
+
def curry(value); end
|
806
|
+
def discard; end
|
807
|
+
def fmap(&block); end
|
808
|
+
def initialize(promise); end
|
809
|
+
def inspect; end
|
810
|
+
def monad; end
|
811
|
+
def or(&block); end
|
812
|
+
def or_fmap(&block); end
|
813
|
+
def promise; end
|
814
|
+
def self.[](executor, &block); end
|
815
|
+
def self.failed(exc); end
|
816
|
+
def self.new(promise = nil, &block); end
|
817
|
+
def self.pure(value = nil, &block); end
|
818
|
+
def then(&block); end
|
819
|
+
def to_maybe; end
|
820
|
+
def to_monad; end
|
821
|
+
def to_result; end
|
822
|
+
def to_s; end
|
823
|
+
def value!; end
|
824
|
+
def value_or(&block); end
|
825
|
+
def wait(timeout = nil); end
|
826
|
+
include Anonymous_Module_44
|
827
|
+
end
|
828
|
+
class Dry::Monads::Try
|
829
|
+
def error?; end
|
830
|
+
def exception; end
|
831
|
+
def failure?; end
|
832
|
+
def self.[](*exceptions, &block); end
|
833
|
+
def self.lift(*args, &block); end
|
834
|
+
def self.pure(value = nil, exceptions = nil, &block); end
|
835
|
+
def self.run(exceptions, f); end
|
836
|
+
def success?; end
|
837
|
+
def to_monad; end
|
838
|
+
def value?; end
|
839
|
+
include Anonymous_Module_45
|
840
|
+
end
|
841
|
+
class Dry::Monads::Try::Value < Dry::Monads::Try
|
842
|
+
def bind(*args); end
|
843
|
+
def bind_call(*args, **kwargs); end
|
844
|
+
def catchable; end
|
845
|
+
def fmap(*args, &block); end
|
846
|
+
def initialize(exceptions, value); end
|
847
|
+
def inspect; end
|
848
|
+
def self.call(*arg0); end
|
849
|
+
def self.to_proc; end
|
850
|
+
def to_maybe; end
|
851
|
+
def to_result; end
|
852
|
+
def to_s; end
|
853
|
+
include Anonymous_Dry_Equalizer_46
|
854
|
+
include Dry::Equalizer::Methods
|
855
|
+
include Dry::Monads::RightBiased::Right
|
856
|
+
end
|
857
|
+
class Dry::Monads::Try::Error < Dry::Monads::Try
|
858
|
+
def ===(other); end
|
859
|
+
def initialize(exception); end
|
860
|
+
def inspect; end
|
861
|
+
def or(*args); end
|
862
|
+
def self.call(*arg0); end
|
863
|
+
def to_maybe; end
|
864
|
+
def to_result; end
|
865
|
+
def to_s; end
|
866
|
+
include Anonymous_Dry_Equalizer_47
|
867
|
+
include Dry::Equalizer::Methods
|
868
|
+
include Dry::Monads::RightBiased::Left
|
869
|
+
end
|
870
|
+
class Dry::Monads::Validated
|
871
|
+
def bind(*arg0); end
|
872
|
+
def self.pure(value = nil, &block); end
|
873
|
+
def to_monad; end
|
874
|
+
include Anonymous_Module_48
|
875
|
+
end
|
876
|
+
class Dry::Monads::Validated::Valid < Dry::Monads::Validated
|
877
|
+
def ===(other); end
|
878
|
+
def alt_map(_ = nil); end
|
879
|
+
def apply(val = nil); end
|
880
|
+
def fmap(proc = nil, &block); end
|
881
|
+
def initialize(value); end
|
882
|
+
def inspect; end
|
883
|
+
def or(_ = nil); end
|
884
|
+
def to_maybe; end
|
885
|
+
def to_result; end
|
886
|
+
def to_s; end
|
887
|
+
def value!; end
|
888
|
+
include Anonymous_Dry_Equalizer_49
|
889
|
+
include Dry::Equalizer::Methods
|
890
|
+
end
|
891
|
+
class Dry::Monads::Validated::Invalid < Dry::Monads::Validated
|
892
|
+
def ===(other); end
|
893
|
+
def alt_map(proc = nil, &block); end
|
894
|
+
def apply(val = nil); end
|
895
|
+
def error; end
|
896
|
+
def fmap(_ = nil); end
|
897
|
+
def initialize(error, trace = nil); end
|
898
|
+
def inspect; end
|
899
|
+
def or(proc = nil, &block); end
|
900
|
+
def to_maybe; end
|
901
|
+
def to_result; end
|
902
|
+
def to_s; end
|
903
|
+
def trace; end
|
904
|
+
include Anonymous_Dry_Equalizer_50
|
905
|
+
include Dry::Equalizer::Methods
|
906
|
+
end
|
907
|
+
module Dry::Monads::ConversionStubs
|
908
|
+
def self.[](*method_names); end
|
909
|
+
end
|
910
|
+
module Dry::Monads::ConversionStubs::Methods
|
911
|
+
def self.to_maybe; end
|
912
|
+
def self.to_result; end
|
913
|
+
def self.to_validated; end
|
914
|
+
def to_maybe; end
|
915
|
+
def to_result; end
|
916
|
+
def to_validated; end
|
917
|
+
end
|
918
|
+
class Dry::Monads::Task::Promise < Concurrent::Promise
|
919
|
+
def on_fulfill(result); end
|
920
|
+
def on_reject(reason); end
|
921
|
+
end
|
922
|
+
module Anonymous_Module_44
|
923
|
+
def to_maybe(*arg0); end
|
924
|
+
def to_result(*arg0); end
|
925
|
+
end
|
926
|
+
module Dry::Monads::Task::Mixin
|
927
|
+
def self.[](executor); end
|
928
|
+
include Dry::Monads::Task::Mixin::Constructors
|
929
|
+
end
|
930
|
+
module Dry::Monads::Task::Mixin::Constructors
|
931
|
+
def Task(&block); end
|
932
|
+
end
|
933
|
+
module Anonymous_Module_41
|
934
|
+
def to_maybe(*arg0); end
|
935
|
+
def to_validated(*arg0); end
|
936
|
+
end
|
937
|
+
module Anonymous_Dry_Equalizer_42
|
938
|
+
def cmp?(comparator, other); end
|
939
|
+
def hash; end
|
940
|
+
def inspect; end
|
941
|
+
end
|
942
|
+
module Anonymous_Dry_Equalizer_43
|
943
|
+
def cmp?(comparator, other); end
|
944
|
+
def hash; end
|
945
|
+
def inspect; end
|
946
|
+
end
|
947
|
+
module Dry::Monads::Result::Mixin
|
948
|
+
include Dry::Monads::Result::Mixin::Constructors
|
949
|
+
end
|
950
|
+
module Dry::Monads::Result::Mixin::Constructors
|
951
|
+
def Failure(value = nil, &block); end
|
952
|
+
def Success(value = nil, &block); end
|
953
|
+
end
|
954
|
+
module Anonymous_Module_45
|
955
|
+
def to_maybe(*arg0); end
|
956
|
+
def to_result(*arg0); end
|
957
|
+
end
|
958
|
+
module Anonymous_Dry_Equalizer_46
|
959
|
+
def cmp?(comparator, other); end
|
960
|
+
def hash; end
|
961
|
+
def inspect; end
|
962
|
+
end
|
963
|
+
module Anonymous_Dry_Equalizer_47
|
964
|
+
def cmp?(comparator, other); end
|
965
|
+
def hash; end
|
966
|
+
def inspect; end
|
967
|
+
end
|
968
|
+
module Dry::Monads::Try::Mixin
|
969
|
+
def Error(error = nil, &block); end
|
970
|
+
def Value(value = nil, exceptions = nil, &block); end
|
971
|
+
include Dry::Monads::Try::Mixin::Constructors
|
972
|
+
end
|
973
|
+
module Dry::Monads::Try::Mixin::Constructors
|
974
|
+
def Try(*exceptions, &f); end
|
975
|
+
end
|
976
|
+
module Anonymous_Module_48
|
977
|
+
def to_maybe(*arg0); end
|
978
|
+
def to_result(*arg0); end
|
979
|
+
end
|
980
|
+
module Anonymous_Dry_Equalizer_49
|
981
|
+
def cmp?(comparator, other); end
|
982
|
+
def hash; end
|
983
|
+
def inspect; end
|
984
|
+
end
|
985
|
+
module Anonymous_Dry_Equalizer_50
|
986
|
+
def cmp?(comparator, other); end
|
987
|
+
def hash; end
|
988
|
+
def inspect; end
|
989
|
+
end
|
990
|
+
module Dry::Monads::Validated::Mixin
|
991
|
+
include Dry::Monads::Validated::Mixin::Constructors
|
992
|
+
end
|
993
|
+
module Dry::Monads::Validated::Mixin::Constructors
|
994
|
+
def Invalid(value = nil, &block); end
|
995
|
+
def Valid(value = nil, &block); end
|
996
|
+
end
|
997
|
+
class Dry::Monads::List
|
998
|
+
def +(other); end
|
999
|
+
def apply(list = nil); end
|
1000
|
+
def bind(*args); end
|
1001
|
+
def coerce(other); end
|
1002
|
+
def collect; end
|
1003
|
+
def deconstruct; end
|
1004
|
+
def empty?; end
|
1005
|
+
def filter; end
|
1006
|
+
def first; end
|
1007
|
+
def fmap(*args); end
|
1008
|
+
def fold_left(initial); end
|
1009
|
+
def fold_right(initial); end
|
1010
|
+
def foldl(initial); end
|
1011
|
+
def foldr(initial); end
|
1012
|
+
def head; end
|
1013
|
+
def initialize(value, type = nil); end
|
1014
|
+
def inspect; end
|
1015
|
+
def last; end
|
1016
|
+
def map(&block); end
|
1017
|
+
def monad; end
|
1018
|
+
def reduce(initial); end
|
1019
|
+
def reverse; end
|
1020
|
+
def select; end
|
1021
|
+
def self.[](*values); end
|
1022
|
+
def self.coerce(value, type = nil); end
|
1023
|
+
def self.pure(value = nil, type = nil, &block); end
|
1024
|
+
def self.unfold(state, type = nil); end
|
1025
|
+
def size; end
|
1026
|
+
def sort; end
|
1027
|
+
def tail; end
|
1028
|
+
def to_a; end
|
1029
|
+
def to_ary; end
|
1030
|
+
def to_monad; end
|
1031
|
+
def to_s; end
|
1032
|
+
def traverse(proc = nil, &block); end
|
1033
|
+
def type; end
|
1034
|
+
def typed(type = nil); end
|
1035
|
+
def typed?; end
|
1036
|
+
def value; end
|
1037
|
+
extend Anonymous_Dry_Core_Deprecations_Tagged_51
|
1038
|
+
extend Dry::Core::Deprecations::Interface
|
1039
|
+
include Anonymous_Dry_Equalizer_52
|
1040
|
+
include Dry::Equalizer::Methods
|
1041
|
+
include Dry::Monads::Transformer
|
1042
|
+
end
|
1043
|
+
module Anonymous_Dry_Core_Deprecations_Tagged_51
|
1044
|
+
end
|
1045
|
+
module Anonymous_Dry_Equalizer_52
|
1046
|
+
def cmp?(comparator, other); end
|
1047
|
+
def hash; end
|
1048
|
+
def inspect; end
|
1049
|
+
end
|
1050
|
+
class Dry::Monads::List::ListBuilder
|
1051
|
+
def [](*args); end
|
1052
|
+
def coerce(value); end
|
1053
|
+
def initialize(type); end
|
1054
|
+
def pure(val = nil, &block); end
|
1055
|
+
def self.[](*arg0); end
|
1056
|
+
def type; end
|
1057
|
+
end
|
1058
|
+
module Dry::Monads::List::Mixin
|
1059
|
+
def List(value); end
|
1060
|
+
end
|
1061
|
+
module Dry::Monads::Do
|
1062
|
+
def self.coerce_to_monad(monads); end
|
1063
|
+
def self.for(*methods); end
|
1064
|
+
def self.halt(result); end
|
1065
|
+
def self.included(base); end
|
1066
|
+
def self.wrap_method(target, method_name); end
|
1067
|
+
extend Dry::Monads::Do::Mixin
|
1068
|
+
end
|
1069
|
+
module Dry::Monads::Do::Mixin
|
1070
|
+
def bind(monads); end
|
1071
|
+
def call; end
|
1072
|
+
end
|
1073
|
+
class Dry::Monads::Do::Halt < StandardError
|
1074
|
+
def initialize(result); end
|
1075
|
+
def result; end
|
1076
|
+
end
|
1077
|
+
module Dry::Monads::Do::All
|
1078
|
+
def self.included(base); end
|
1079
|
+
extend Dry::Monads::Do::All::InstanceMixin
|
1080
|
+
end
|
1081
|
+
class Dry::Monads::Do::All::MethodTracker < Module
|
1082
|
+
def extend_object(target); end
|
1083
|
+
def initialize(wrappers); end
|
1084
|
+
def wrap_method(target, method); end
|
1085
|
+
def wrappers; end
|
1086
|
+
end
|
1087
|
+
module Dry::Monads::Do::All::InstanceMixin
|
1088
|
+
def extended(object); end
|
1089
|
+
end
|
1090
|
+
class Dry::Monads::Lazy < Dry::Monads::Task
|
1091
|
+
def force!; end
|
1092
|
+
def force; end
|
1093
|
+
def inspect; end
|
1094
|
+
def self.[](executor, &block); end
|
1095
|
+
def self.new(promise = nil, &block); end
|
1096
|
+
def to_s; end
|
1097
|
+
def value!; end
|
1098
|
+
end
|
1099
|
+
module Dry::Monads::Lazy::Mixin
|
1100
|
+
include Dry::Monads::Lazy::Mixin::Constructors
|
1101
|
+
end
|
1102
|
+
module Dry::Monads::Lazy::Mixin::Constructors
|
1103
|
+
def Lazy(&block); end
|
1104
|
+
end
|
1105
|
+
class Dry::Monads::Result::Fixed < Module
|
1106
|
+
def included(base); end
|
1107
|
+
def initialize(error, **_options); end
|
1108
|
+
def self.[](error, **options); end
|
1109
|
+
end
|