raap 0.8.0 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f119356b79f6beb968f26d019dda506e8eada4a48e178bd029e7e97d187f2d2c
4
- data.tar.gz: f72f9d682ff47f11d51ebcf547a7f991c75b9be731eabc018fbb5b5a727dc358
3
+ metadata.gz: b326e4d67e7475c2b0c20dd3327c92d50d5c1adda8c45adc05e6ba58b3e289c0
4
+ data.tar.gz: e6f3d8ed34403ba7561fb2864c5e1410eaf07da10917eb43122d0dd373817e82
5
5
  SHA512:
6
- metadata.gz: 7d3fbbfd916eb8526d9021e94408f4af402d80455c89b822c74557a76a31b8fc93a0d7acd8e47efdca32a8b1a19fb37a2b8f997e3c7ad6083e2f61d72052973a
7
- data.tar.gz: cfbeb8a13d53e16a6e51701c30354ea1537c8b6b7a7ef46665b7e0efe9db43a4ce769370f38f558e4a384c80a039960faa65acbc8648c8f36e3725a53c2c1075
6
+ metadata.gz: '094fe3ad8922e1c86fdfcf67353c0819b501637f99235fd2eebc8470196d41b5f89b3c8aaea9a48681c122dd434b11ebc349b733f47637cbaf706748ee613373'
7
+ data.tar.gz: d1dcf25d8cd69d7f48c6095fb3f9c8e1f144704fc12a5a441e231d371c4b8d62b76c75a6e9b09ab1375fc45071361a9988ee268c7c4dfa7e0828de6f5137246b
data/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  ## [Unreleased]
2
2
 
3
+ ## [0.9.0] - 2024-06-11
4
+
5
+ * Update ruby by @ksss in https://github.com/ksss/raap/pull/15
6
+ * Avoid ArgumentError no keywords accepted by @ksss in https://github.com/ksss/raap/pull/16
7
+ * Fix bug for Set by @ksss in https://github.com/ksss/raap/pull/17
8
+
9
+ ## [0.8.0] - 2024-06-09
10
+
11
+ * Function of interface should not log coverage by @ksss in https://github.com/ksss/raap/pull/11
12
+ * Type-checking block arguments by @ksss in https://github.com/ksss/raap/pull/12
13
+ * Read options directly by @ksss in https://github.com/ksss/raap/pull/13
14
+ * Return value is not checked by @ksss in https://github.com/ksss/raap/pull/14
15
+
3
16
  ## [0.1.0] - 2024-03-20
4
17
 
5
18
  - Initial release
data/lib/raap/cli.rb CHANGED
@@ -52,6 +52,8 @@ module RaaP
52
52
 
53
53
  def load
54
54
  OptionParser.new do |o|
55
+ o.version = RaaP::VERSION
56
+
55
57
  o.on('-I', '--include PATH') do |path|
56
58
  RaaP::RBS.loader.add(path: Pathname(path))
57
59
  end
@@ -223,7 +225,7 @@ module RaaP
223
225
  type_args = type.args
224
226
 
225
227
  definition = RBS.builder.build_singleton(type_name)
226
- type_params_decl = definition.type_params_decl
228
+ type_params_decl = definition.type_params_decl.freeze
227
229
  definition.methods.each do |method_name, method|
228
230
  if @skip.include?("#{type_name.absolute!}.#{method_name}")
229
231
  RaaP.logger.info("Skip #{"#{type_name.absolute!}.#{method_name}"}")
@@ -243,7 +245,7 @@ module RaaP
243
245
  end
244
246
 
245
247
  definition = RBS.builder.build_instance(type_name)
246
- type_params_decl = definition.type_params_decl
248
+ type_params_decl = definition.type_params_decl.freeze
247
249
  definition.methods.each do |method_name, method|
248
250
  if @skip.include?("#{type_name.absolute!}##{method_name}")
249
251
  RaaP.logger.info("Skip #{"#{type_name.absolute!}.#{method_name}"}")
@@ -62,10 +62,10 @@ module RaaP
62
62
  end
63
63
  fun.optional_positionals.each do |param|
64
64
  resource.shift.tap do |name|
65
- # FIXME: Support without literal type
66
65
  default = Type.new(param.type).pick(size: size)
67
66
  args_name << name
68
- args_source << "#{name} = #{default}"
67
+ # FIXME: Support any object
68
+ args_source << "#{name} = #{default.inspect}"
69
69
  end
70
70
  end
71
71
  fun.rest_positionals&.yield_self do |_|
@@ -148,9 +148,17 @@ module RaaP
148
148
  def eval_one(symbolic_call)
149
149
  symbolic_call => [:call, receiver_value, method_name, args, kwargs, block]
150
150
  if @allow_private
151
- receiver_value.__send__(method_name, *args, **kwargs, &block)
151
+ if kwargs.empty?
152
+ receiver_value.__send__(method_name, *args, &block)
153
+ else
154
+ receiver_value.__send__(method_name, *args, **kwargs, &block)
155
+ end
152
156
  else
153
- BindCall.public_send(receiver_value, method_name, *args, **kwargs, &block)
157
+ if kwargs.empty?
158
+ BindCall.public_send(receiver_value, method_name, *args, &block)
159
+ else
160
+ BindCall.public_send(receiver_value, method_name, *args, **kwargs, &block)
161
+ end
154
162
  end
155
163
  end
156
164
 
data/lib/raap/type.rb CHANGED
@@ -47,7 +47,7 @@ module RaaP
47
47
  if snew
48
48
  # class
49
49
  rbs_method_type = snew.method_types.sample or raise
50
- type_params = definition.type_params_decl.concat(rbs_method_type.type_params.drop(definition.type_params_decl.length))
50
+ type_params = definition.type_params_decl.dup.concat(rbs_method_type.type_params.drop(definition.type_params_decl.length))
51
51
  ts = TypeSubstitution.new(type_params, type.args)
52
52
  maped_rbs_method_type = ts.method_type_sub(rbs_method_type)
53
53
  method_type = MethodType.new(maped_rbs_method_type)
@@ -74,6 +74,21 @@ module RaaP
74
74
  register("::Complex") { complex }
75
75
  register("::Data") { Data.define }
76
76
  register("::Encoding") { encoding }
77
+ register("::Enumerator") do
78
+ sized do |size|
79
+ instance = __skip__ = type
80
+ Enumerator.new do |y|
81
+ size.times do
82
+ elem = if instance.args[0]
83
+ Type.new(instance.args[0]).pick(size: size / 2)
84
+ else
85
+ Type.random.pick(size: size / 2)
86
+ end
87
+ y.yield elem
88
+ end
89
+ end
90
+ end
91
+ end
77
92
  register("::FalseClass") { false }
78
93
  register("::File") { File.open("/dev/null") }
79
94
  register("::Float") { float }
@@ -96,6 +111,11 @@ module RaaP
96
111
  register("::Time") { [:call, Time, :now, [], {}, nil] }
97
112
  register("::TrueClass") { true }
98
113
  register("::UnboundMethod") { temp_method_object.unbind }
114
+ register("BigDecimal") do
115
+ sized do |size|
116
+ [:call, Kernel, :BigDecimal, [size], {}, nil]
117
+ end
118
+ end
99
119
 
100
120
  attr_reader :type
101
121
  attr_reader :range
data/lib/raap/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RaaP
4
- VERSION = "0.8.0"
4
+ VERSION = "0.10.0"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: raap
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - ksss
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-06-09 00:00:00.000000000 Z
11
+ date: 2024-06-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rbs
@@ -46,13 +46,10 @@ executables:
46
46
  extensions: []
47
47
  extra_rdoc_files: []
48
48
  files:
49
- - ".rubocop.yml"
50
49
  - CHANGELOG.md
51
50
  - CODE_OF_CONDUCT.md
52
51
  - LICENSE.txt
53
52
  - README.md
54
- - Rakefile
55
- - Steepfile
56
53
  - exe/raap
57
54
  - lib/raap.rb
58
55
  - lib/raap/bind_call.rb
@@ -78,12 +75,6 @@ files:
78
75
  - lib/raap/value/void.rb
79
76
  - lib/raap/version.rb
80
77
  - lib/shims.rb
81
- - public/example.webp
82
- - public/jacket.webp
83
- - rbs_collection.lock.yaml
84
- - rbs_collection.yaml
85
- - sig/raap.rbs
86
- - sig/shims.rbs
87
78
  homepage: https://github.com/ksss/raap
88
79
  licenses:
89
80
  - MIT
@@ -97,7 +88,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
97
88
  requirements:
98
89
  - - ">="
99
90
  - !ruby/object:Gem::Version
100
- version: 3.0.0
91
+ version: 3.1.0
101
92
  required_rubygems_version: !ruby/object:Gem::Requirement
102
93
  requirements:
103
94
  - - ">="
data/.rubocop.yml DELETED
@@ -1,33 +0,0 @@
1
- AllCops:
2
- TargetRubyVersion: 3.0
3
- NewCops: enable
4
- Include:
5
- - 'lib/**/*.rb'
6
-
7
- Lint:
8
- Enabled: true
9
- Lint/EmptyBlock:
10
- Enabled: false
11
- Lint/SymbolConversion:
12
- Enabled: false
13
-
14
- Style:
15
- Enabled: false
16
- Style/HashSyntax:
17
- EnforcedShorthandSyntax: always
18
- Enabled: true
19
- Style/FrozenStringLiteralComment:
20
- Enabled: true
21
-
22
- Metrics:
23
- Enabled: false
24
-
25
- Layout:
26
- Enabled: true
27
- Layout/FirstArrayElementIndentation:
28
- EnforcedStyle: consistent
29
- Layout/LineLength:
30
- Max: 150
31
-
32
- Naming:
33
- Enabled: false
data/Rakefile DELETED
@@ -1,19 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "bundler/gem_tasks"
4
- require "minitest/test_task"
5
- require "rubocop/rake_task"
6
-
7
- Minitest::TestTask.create do |t|
8
- t.test_prelude = 'require "test/test_helper"'
9
- end
10
-
11
- RuboCop::RakeTask.new
12
-
13
- namespace :steep do
14
- task :check do
15
- sh "bundle exec steep check"
16
- end
17
- end
18
-
19
- task default: [:test, :rubocop, 'steep:check']
data/Steepfile DELETED
@@ -1,4 +0,0 @@
1
- target :lib do
2
- check "lib"
3
- signature "sig"
4
- end
data/public/example.webp DELETED
Binary file
data/public/jacket.webp DELETED
Binary file
@@ -1,128 +0,0 @@
1
- ---
2
- path: ".gem_rbs_collection"
3
- gems:
4
- - name: abbrev
5
- version: '0'
6
- source:
7
- type: stdlib
8
- - name: activesupport
9
- version: '7.0'
10
- source:
11
- type: git
12
- name: ruby/gem_rbs_collection
13
- revision: d2e93d426c927fdab90ef12e30a9875aa05d60d6
14
- remote: https://github.com/ruby/gem_rbs_collection.git
15
- repo_dir: gems
16
- - name: base64
17
- version: '0'
18
- source:
19
- type: stdlib
20
- - name: bigdecimal
21
- version: '0'
22
- source:
23
- type: stdlib
24
- - name: concurrent-ruby
25
- version: '1.1'
26
- source:
27
- type: git
28
- name: ruby/gem_rbs_collection
29
- revision: d2e93d426c927fdab90ef12e30a9875aa05d60d6
30
- remote: https://github.com/ruby/gem_rbs_collection.git
31
- repo_dir: gems
32
- - name: connection_pool
33
- version: '2.4'
34
- source:
35
- type: git
36
- name: ruby/gem_rbs_collection
37
- revision: d2e93d426c927fdab90ef12e30a9875aa05d60d6
38
- remote: https://github.com/ruby/gem_rbs_collection.git
39
- repo_dir: gems
40
- - name: date
41
- version: '0'
42
- source:
43
- type: stdlib
44
- - name: erb
45
- version: '0'
46
- source:
47
- type: stdlib
48
- - name: fileutils
49
- version: '0'
50
- source:
51
- type: stdlib
52
- - name: i18n
53
- version: '1.10'
54
- source:
55
- type: git
56
- name: ruby/gem_rbs_collection
57
- revision: d2e93d426c927fdab90ef12e30a9875aa05d60d6
58
- remote: https://github.com/ruby/gem_rbs_collection.git
59
- repo_dir: gems
60
- - name: io-console
61
- version: '0'
62
- source:
63
- type: stdlib
64
- - name: json
65
- version: '0'
66
- source:
67
- type: stdlib
68
- - name: logger
69
- version: '0'
70
- source:
71
- type: stdlib
72
- - name: minitest
73
- version: '0'
74
- source:
75
- type: stdlib
76
- - name: monitor
77
- version: '0'
78
- source:
79
- type: stdlib
80
- - name: mutex_m
81
- version: '0'
82
- source:
83
- type: stdlib
84
- - name: optparse
85
- version: '0'
86
- source:
87
- type: stdlib
88
- - name: pathname
89
- version: '0'
90
- source:
91
- type: stdlib
92
- - name: rake
93
- version: '13.0'
94
- source:
95
- type: git
96
- name: ruby/gem_rbs_collection
97
- revision: d2e93d426c927fdab90ef12e30a9875aa05d60d6
98
- remote: https://github.com/ruby/gem_rbs_collection.git
99
- repo_dir: gems
100
- - name: rbs
101
- version: 3.4.4
102
- source:
103
- type: rubygems
104
- - name: rdoc
105
- version: '0'
106
- source:
107
- type: stdlib
108
- - name: securerandom
109
- version: '0'
110
- source:
111
- type: stdlib
112
- - name: singleton
113
- version: '0'
114
- source:
115
- type: stdlib
116
- - name: time
117
- version: '0'
118
- source:
119
- type: stdlib
120
- - name: timeout
121
- version: '0'
122
- source:
123
- type: stdlib
124
- - name: tsort
125
- version: '0'
126
- source:
127
- type: stdlib
128
- gemfile_lock_path: Gemfile.lock
data/rbs_collection.yaml DELETED
@@ -1,19 +0,0 @@
1
- # Download sources
2
- sources:
3
- - type: git
4
- name: ruby/gem_rbs_collection
5
- remote: https://github.com/ruby/gem_rbs_collection.git
6
- revision: main
7
- repo_dir: gems
8
-
9
- # You can specify local directories as sources also.
10
- # - type: local
11
- # path: path/to/your/local/repository
12
-
13
- # A directory to install the downloaded RBSs
14
- path: .gem_rbs_collection
15
-
16
- gems:
17
- - name: activesupport
18
- - name: steep
19
- ignore: true
data/sig/raap.rbs DELETED
@@ -1,380 +0,0 @@
1
- module RaaP
2
- type symbolic_call = [:call, untyped, Symbol, Array[untyped], Hash[Symbol, untyped], Proc?]
3
- VERSION: String
4
-
5
- def self.logger: () -> ::Logger
6
- def self.logger=: (::Logger) -> void
7
-
8
- module BindCall
9
- def self.define_method: (untyped, Symbol) { (*untyped, **untyped) -> untyped } -> void
10
- def self.respond_to?: (untyped, untyped, ?boolish) -> bool
11
- def self.instance_of?: (untyped, Module) -> bool
12
- def self.is_a?: (untyped, Module) -> bool
13
- def self.extend: (untyped, Module) -> void
14
- def self.name: (Module) -> String?
15
- def self.to_s: (untyped) -> String
16
- def self.class: (untyped) -> untyped
17
- def self.inspect: (untyped) -> String
18
- end
19
-
20
- class CLI
21
- class Option < ::Struct[untyped]
22
- def self.new: (?timeout: (Integer | Float | nil), ?size_from: ::Integer, ?size_to: ::Integer, ?size_by: ::Integer, ?allow_private: bool, ?coverage: bool) -> instance
23
-
24
- def self.[]: (?timeout: (Integer | Float | nil), ?size_from: ::Integer, ?size_to: ::Integer, ?size_by: ::Integer, ?allow_private: bool, ?coverage: bool) -> instance
25
-
26
- def self.keyword_init?: () -> true
27
-
28
- def self.members: () -> [ :timeout, :size_from, :size_to, :size_by, :allow_private, :coverage]
29
-
30
- def members: () -> [ :timeout, :size_from, :size_to, :size_by, :allow_private, :coverage]
31
-
32
- attr_accessor timeout: (Integer | Float | nil)
33
-
34
- attr_accessor size_from: ::Integer
35
-
36
- attr_accessor size_to: ::Integer
37
-
38
- attr_accessor size_by: ::Integer
39
-
40
- attr_accessor allow_private: bool
41
-
42
- attr_accessor coverage: bool
43
- end
44
-
45
- type property_result = [Integer, Symbol, ::RBS::MethodType, StringIO?]
46
-
47
- DEFAULT_SKIP: ::Set[String]
48
-
49
- @argv: Array[String]
50
- @option: Option
51
- @results: Array[{ method: ::RBS::Definition::Method, properties: Array[property_result] }]
52
- @skip: ::Set[::String]
53
-
54
- def self.option: () -> Option
55
- def self.option=: (Option) -> void
56
-
57
- def initialize: (Array[String]) -> void
58
- def load: () -> self
59
- def run: () -> Integer
60
-
61
- private
62
-
63
- def run_by: (kind: (:instance | :singleton), tag: String) -> void
64
- def run_by_type_name: (tag: String) -> void
65
- def run_by_type_name_with_search: (tag: String) -> void
66
- def property: (receiver_type: Type, type_params_decl: Array[::RBS::AST::TypeParam], type_args: Array[::RBS::Types::t], method_name: Symbol, method_type: ::RBS::MethodType) -> property_result
67
- def report: () -> Integer
68
- end
69
-
70
- module Coverage
71
- type locs = [::RBS::Buffer::loc, ::RBS::Buffer::loc]
72
- class Writer
73
- @method_type: ::RBS::MethodType
74
- @cov: ::Set[Symbol]
75
- @cur: Integer
76
-
77
- def initialize: (::RBS::MethodType, Set[Symbol]) -> void
78
- def write: (IO) -> void
79
-
80
- private
81
-
82
- def method_type_location: () -> ::RBS::Location[untyped, untyped]
83
- def slice: (Integer, Range[Integer]) -> String
84
- def write_param: (IO, String, ::RBS::Types::Function::Param) -> void
85
- def write_type: (IO, String, ::RBS::Types::t) -> void
86
- def green: (String) -> String
87
- def red: (String) -> String
88
- end
89
-
90
- self.@cov: Set[Symbol]?
91
- self.@method_type: ::RBS::MethodType
92
-
93
- def self.start: (::RBS::MethodType) -> void
94
- def self.running?: () -> bool
95
- def self.log: (String | Symbol) -> void
96
- def self.cov: () -> Set[Symbol]
97
- def self.show: (IO) -> void
98
- def self.new_type_with_log: (String, ::RBS::Types::t) -> Type
99
- def self.log_with_type: (String, ::RBS::Types::t) -> nil
100
- | (String, ::RBS::Types::t) ?{ (::RBS::Types::t) -> Type } -> Type
101
- end
102
-
103
- class FunctionType
104
- @fun: ::RBS::Types::Function
105
- @coverage: boolish
106
-
107
- def initialize: (::RBS::Types::Function, ?coverage: boolish) -> void
108
- def pick_arguments: (?size: Integer) -> [Array[untyped], Hash[Symbol, untyped]]
109
- def arguments_to_symbolic_call: (?size: Integer) -> [Array[untyped], Hash[Symbol, untyped]]
110
-
111
- private
112
-
113
- def to_symbolic_call_recursive: (untyped, size: Integer) -> untyped
114
- def build_args_type: () -> Array[Type]
115
- def build_kwargs_type: () -> Hash[Symbol, Type]
116
- def build_type_with_coverage: (String, ::RBS::Types::Function::Param) -> Type
117
- end
118
-
119
- class MethodProperty
120
- class Stats
121
- attr_accessor success: Integer
122
- attr_accessor skip: Integer
123
- attr_accessor exception: Integer
124
- attr_accessor break: bool
125
- end
126
-
127
- @receiver_type: Type
128
- @method_name: Symbol
129
- @method_type: MethodType
130
- @size_step: _Each[Integer]
131
- @timeout: (Integer | Float | nil)
132
- @allow_private: bool
133
-
134
- def initialize: (receiver_type: Type, method_name: Symbol, method_type: MethodType, size_step: _Each[Integer], timeout: (Integer | Float | nil), ?allow_private: bool) -> void
135
- def run: () { (Result::Success | Result::Failure | Result::Skip | Result::Exception) -> void } -> Stats
136
-
137
- private
138
-
139
- def call: (size: Integer, stats: Stats) -> (Result::Success | Result::Failure | Result::Skip | Result::Exception)
140
- def check_return: (receiver_value: untyped, return_value: untyped) -> ([Symbol] | [Symbol, Exception])
141
- def return_type: () -> RBS::Types::t
142
- def original_return_type: () -> RBS::Types::t
143
- def coverage: (String, untyped, RBS::Types::t, ?RBS::Test::TypeCheck?) -> void
144
- end
145
-
146
- class MethodType
147
- attr_reader rbs: ::RBS::MethodType
148
- @fun_type: FunctionType
149
- @type_check: ::RBS::Test::TypeCheck
150
-
151
- def initialize: (::RBS::MethodType | String method, ?type_params_decl: Array[untyped], ?type_args: Array[untyped], ?self_type: ::RBS::Types::ClassInstance?, ?instance_type: ::RBS::Types::ClassInstance?, ?class_type: ::RBS::Types::ClassSingleton?) -> void
152
- def pick_arguments: (?size: Integer) -> [Array[untyped], Hash[Symbol, untyped], ::Proc?]
153
- def arguments_to_symbolic_call: (?size: Integer) -> [Array[untyped], Hash[Symbol, untyped], ::Proc?]
154
- def pick_block: (?size: Integer) -> ::Proc?
155
- def check_return: (untyped) -> bool
156
- end
157
-
158
- module Minitest
159
- end
160
-
161
- module RBS
162
- self.@builder: ::RBS::DefinitionBuilder
163
- self.@env: ::RBS::Environment
164
- self.@loader: ::RBS::EnvironmentLoader
165
-
166
- def self.builder: () -> ::RBS::DefinitionBuilder
167
- def self.env: () -> ::RBS::Environment
168
- def self.loader: () -> ::RBS::EnvironmentLoader
169
- def self.parse_type: (String) -> ::RBS::Types::t
170
- def self.parse_method_type: (String) -> ::RBS::MethodType
171
- def self.parse_member: (String) -> ::RBS::AST::Members::Attribute
172
- def self._shift_location: (untyped, Integer) -> void
173
- def self.find_alias_decl: (::RBS::TypeName, Symbol) -> ::RBS::AST::Members::Alias?
174
- end
175
-
176
- module Result
177
- interface _ReturnValue
178
- def return_value: () -> untyped
179
- end
180
-
181
- module ReturnValueWithType : _ReturnValue
182
- def return_value_with_type: () -> String
183
-
184
- private
185
-
186
- def return_value_to_type: (untyped) -> String
187
- end
188
-
189
- class Success < Data
190
- include ReturnValueWithType
191
- def self.new: (symbolic_call: symbolic_call, return_value: untyped) -> instance
192
- attr_reader symbolic_call: symbolic_call
193
- attr_reader return_value: untyped
194
- def called_str: () -> String
195
- end
196
- class Failure < Data
197
- include ReturnValueWithType
198
- def self.new: (symbolic_call: symbolic_call, return_value: untyped, ?exception: ::Exception?) -> instance
199
- attr_reader symbolic_call: symbolic_call
200
- attr_reader return_value: untyped
201
- attr_reader exception: ::Exception?
202
- def called_str: () -> String
203
- end
204
- class Skip < Data
205
- def self.new: (symbolic_call: symbolic_call?, exception: ::Exception) -> instance
206
- attr_reader symbolic_call: symbolic_call?
207
- attr_reader exception: ::Exception
208
- end
209
- class Exception < Data
210
- def self.new: (symbolic_call: symbolic_call?, exception: ::Exception) -> instance
211
- attr_reader symbolic_call: symbolic_call?
212
- attr_reader exception: ::Exception
213
- end
214
- end
215
-
216
- class Sized[T]
217
- @block: ::Proc
218
- @such_that: ::Proc?
219
-
220
- def initialize: () { (Integer) -> untyped } -> void
221
- def pick: (size: Integer) -> T
222
- def such_that: () { (untyped) -> boolish } -> self
223
- def such_that_loop: [R] () { (Integer) -> R } -> R
224
- end
225
-
226
- class SymbolicCaller
227
- class Var
228
- attr_reader name: String
229
- def initialize: (String name) -> void
230
- def +: (String) -> String
231
- def to_s: () -> String
232
- end
233
-
234
- attr_reader symbolic_call: untyped
235
- attr_reader allow_private: bool
236
-
237
- def initialize: (untyped, ?allow_private: bool) -> void
238
- def eval: () -> untyped
239
- def call_str: () -> String
240
- def to_lines: () -> Array[String]
241
-
242
- private
243
-
244
- def try_eval: (untyped) -> untyped
245
- def walk: () ?{ (symbolic_call) -> untyped} -> untyped
246
- def _walk: (untyped, bool is_last) ?{ (symbolic_call) -> untyped} -> untyped
247
- def eval_one: (symbolic_call) -> untyped
248
- def var_name: (Module) -> String
249
- def printable?: (untyped) -> bool
250
- def printable: (untyped) -> String
251
- end
252
-
253
- class TypeSubstitution
254
- @type_params: ::Array[::RBS::AST::TypeParam]
255
- @type_args: ::Array[::RBS::Types::t]
256
-
257
- def initialize: (::Array[::RBS::AST::TypeParam], ::Array[::RBS::Types::t]) -> void
258
- def build: () -> ::RBS::Substitution
259
- def method_type_sub: (::RBS::MethodType, ?self_type: ::RBS::Types::t?, ?instance_type: ::RBS::Types::ClassInstance?, ?class_type: ::RBS::Types::ClassSingleton?) -> ::RBS::MethodType
260
-
261
- private
262
-
263
- interface _MapType
264
- def map_type: { (untyped) -> untyped } -> untyped
265
- end
266
-
267
- def sub: (_MapType search, self_type: ::RBS::Types::t?, instance_type: ::RBS::Types::t?, class_type: ::RBS::Types::t?) -> untyped
268
- end
269
-
270
- class Type
271
- module Arithmetic
272
- def self.float: () -> Float
273
- def self.positive_float: () -> Float
274
- end
275
-
276
- @such_that: (^(untyped) -> ::boolish)?
277
-
278
- GENERATORS: Hash[String, ^() -> Sized[untyped]]
279
- SIMPLE_SOURCE: Array[String]
280
-
281
- def self.register: (String) { () [self: instance] -> untyped } -> void
282
- def self.random: () -> Type
283
- def self.random_without_basic_object: () -> Type
284
- def self.call_new_from: (Module, ::RBS::Types::ClassInstance, size: Integer) -> symbolic_call
285
-
286
- attr_reader type: ::RBS::Types::t
287
- attr_reader range: Range[untyped]
288
-
289
- def initialize: (String | ::RBS::Types::t, ?range: Range[untyped]) -> void
290
-
291
- # Define rule for generating values
292
- # type.such_that { |i| i != 0 }.pick #=> ensure that the value is not 0
293
- def such_that: () { (untyped) -> boolish } -> self
294
-
295
- # Basic API for materializing values
296
- def pick: (?size: Integer) -> untyped
297
- def to_symbolic_caller: (?size: Integer) -> SymbolicCaller
298
- def to_symbolic_call: (?size: Integer) -> untyped
299
- def sized: [T] () { (Integer size) -> T } -> Sized[T]
300
-
301
- private
302
-
303
- def to_symbolic_call_from_initialize: (::RBS::Types::ClassInstance, size: Integer) -> (symbolic_call | Value::Module)
304
- def parse: (String | ::RBS::Types::t) -> ::RBS::Types::t?
305
- def try: (times: Integer, size: Integer) { (Integer size) -> untyped } -> untyped
306
-
307
- def numeric: () -> Sized[Numeric]
308
- def integer: () -> Sized[Integer]
309
- def none_zero_integer: () -> Sized[Integer]
310
- def float: () -> Sized[Float]
311
- def rational: () -> Sized[symbolic_call]
312
- def complex: () -> Sized[symbolic_call]
313
- def string: () -> Sized[String]
314
- def symbol: () -> Sized[Symbol]
315
- def array: (Type) -> Sized[Array[untyped]]
316
- def dict: (Type, Type) -> Sized[Hash[untyped, untyped]]
317
- def encoding: () -> symbolic_call
318
- def bool: () -> bool
319
- def temp_method_object: () -> ::Method
320
- end
321
-
322
- module Value
323
- class Bottom < BasicObject
324
- def inspect: () -> String
325
- def class: () -> class
326
- end
327
-
328
- class Interface
329
- @type: ::RBS::Types::Interface
330
- @size: Integer
331
- @definition: ::RBS::Definition
332
-
333
- def self.define_method_from_interface: (::Module base_class, String | ::RBS::Types::Interface type, ?size: Integer) -> void
334
- def initialize: (String | ::RBS::Types::Interface | String, ?size: Integer) -> void
335
- def respond_to?: (Symbol, ?boolish) -> bool
336
- def inspect: () -> String
337
- def class: () -> class
338
- end
339
-
340
- module Intersection
341
- @type: ::RBS::Types::Intersection
342
- @children: Array[Type]
343
- @size: Integer
344
-
345
- def initialize: (::RBS::Types::Intersection | String, ?size: Integer) -> void
346
- def respond_to?: (Symbol, ?boolish) -> bool
347
- def inspect: () -> String
348
- def class: () -> class
349
- end
350
-
351
- class Module < BasicObject
352
- @type: ::RBS::Types::ClassInstance
353
- @size: Integer
354
- @self_type: untyped
355
-
356
- def initialize: (::RBS::Types::ClassInstance | String, ?size: Integer) -> void
357
- def respond_to?: (Symbol, ?boolish) -> bool
358
- def inspect: () -> String
359
- def class: () -> class
360
- end
361
-
362
- class Top < BasicObject
363
- def inspect: () -> String
364
- def class: () -> class
365
- end
366
-
367
- class Variable
368
- attr_reader type: ::RBS::Types::Variable
369
-
370
- def initialize: (::RBS::Types::Variable | String | Symbol) -> void
371
- def inspect: () -> String
372
- def class: () -> class
373
- end
374
-
375
- class Void < BasicObject
376
- def inspect: () -> String
377
- def class: () -> class
378
- end
379
- end
380
- end
data/sig/shims.rbs DELETED
@@ -1,4 +0,0 @@
1
- module Timeout
2
- class ExitException < Exception
3
- end
4
- end