orthoses 1.6.0 → 1.7.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 +4 -4
- data/Gemfile +1 -0
- data/Gemfile.lock +17 -7
- data/examples/rack-test/Gemfile.lock +3 -3
- data/examples/rack-test/out/rack/test/cookie.rbs +28 -0
- data/examples/rack-test/out/rack/test/cookie_jar.rbs +28 -0
- data/examples/rack-test/out/rack/test/fake_app.rbs +13 -0
- data/examples/rack-test/out/rack/test/input_rewinder.rbs +8 -0
- data/examples/rack-test/out/rack/test/methods.rbs +98 -0
- data/examples/rack-test/out/rack/test/session.rbs +186 -0
- data/examples/rack-test/out/rack/test/uploaded_file.rbs +18 -0
- data/examples/rack-test/out/rack/test/utils.rbs +112 -0
- data/examples/rack-test/out/rack/test.rbs +3 -0
- data/lib/orthoses/content/duplication_checker.rb +40 -18
- data/lib/orthoses/content/environment.rb +15 -2
- data/lib/orthoses/content.rb +46 -44
- data/lib/orthoses/filter.rb +2 -2
- data/lib/orthoses/rbs_prototype_rb.rb +16 -2
- data/lib/orthoses/version.rb +1 -1
- data/sig/orthoses/builder.rbs +9 -0
- data/sig/orthoses/call_tracer/capture.rbs +1 -1
- data/sig/orthoses/call_tracer/lazy.rbs +12 -0
- data/sig/orthoses/content/duplication_checker.rbs +3 -0
- data/sig/orthoses/content.rbs +1 -1
- data/sig/orthoses/filter.rbs +5 -0
- data/sig/orthoses/lazy_trace_point.rbs +8 -0
- data/sig/orthoses/outputable/avoid_recursive_ancestor_error.rbs +2 -0
- data/sig/orthoses/outputable/constantizable_filter.rbs +2 -0
- data/sig/orthoses/outputable/uniq_content_body.rbs +2 -0
- data/sig/orthoses/pp.rbs +2 -0
- data/sig/orthoses/rbs_prototype_rb.rbs +5 -0
- data/sig/orthoses/rbs_prototype_runtime.rbs +3 -0
- data/sig/orthoses/sort.rbs +1 -0
- data/sig/orthoses/store.rbs +2 -0
- data/sig/orthoses/tap.rbs +3 -0
- data/sig/orthoses/utils/type_list.rbs +1 -0
- data/sig/orthoses.rbs +1 -1
- metadata +12 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e2915ad2b524676ac4ea67e61fcc90713bdaa8e79cb2ff01aeba74fe54b4885d
|
4
|
+
data.tar.gz: 0f8823a7e88b4030eb6554ac9f35a068730ac944378832f923c99cf3b4e8e6be
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '06038e9dd28433a1c9358915720fe942f597caee2d68651ce7c54b47136633cc1d55288c7b8053766f393bacda9974b1ee662337f80d78b0796d405453b2cc32'
|
7
|
+
data.tar.gz: 92074fd8665515453126f44627604f7fd3da1dcb7a85ec25b1ef51424c6797f9b1f67925d2349db05b7ce7aace06dc7f3f2d2be737cfb5399383bed4f846b11f
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
orthoses (1.
|
4
|
+
orthoses (1.7.0)
|
5
5
|
rbs (~> 3.0)
|
6
6
|
|
7
7
|
GEM
|
@@ -15,10 +15,16 @@ GEM
|
|
15
15
|
ast (2.4.2)
|
16
16
|
concurrent-ruby (1.2.2)
|
17
17
|
csv (3.2.6)
|
18
|
+
debug (1.8.0)
|
19
|
+
irb (>= 1.5.0)
|
20
|
+
reline (>= 0.3.1)
|
18
21
|
ffi (1.15.5)
|
19
|
-
fileutils (1.7.
|
20
|
-
i18n (1.
|
22
|
+
fileutils (1.7.1)
|
23
|
+
i18n (1.13.0)
|
21
24
|
concurrent-ruby (~> 1.0)
|
25
|
+
io-console (0.6.0)
|
26
|
+
irb (1.6.4)
|
27
|
+
reline (>= 0.3.0)
|
22
28
|
json (2.6.3)
|
23
29
|
language_server-protocol (3.17.0.3)
|
24
30
|
listen (3.8.0)
|
@@ -26,8 +32,8 @@ GEM
|
|
26
32
|
rb-inotify (~> 0.9, >= 0.9.10)
|
27
33
|
logger (1.5.3)
|
28
34
|
minitest (5.18.0)
|
29
|
-
parallel (1.
|
30
|
-
parser (3.2.
|
35
|
+
parallel (1.23.0)
|
36
|
+
parser (3.2.2.1)
|
31
37
|
ast (~> 2.4.1)
|
32
38
|
pathname (0.2.1)
|
33
39
|
rainbow (3.1.1)
|
@@ -35,7 +41,9 @@ GEM
|
|
35
41
|
rb-fsevent (0.11.2)
|
36
42
|
rb-inotify (0.10.1)
|
37
43
|
ffi (~> 1.0)
|
38
|
-
rbs (3.0
|
44
|
+
rbs (3.1.0)
|
45
|
+
reline (0.3.3)
|
46
|
+
io-console (~> 0.5)
|
39
47
|
rgot (1.3.0)
|
40
48
|
securerandom (0.2.2)
|
41
49
|
steep (1.4.0.dev.2)
|
@@ -62,10 +70,12 @@ GEM
|
|
62
70
|
unicode-display_width (2.4.2)
|
63
71
|
|
64
72
|
PLATFORMS
|
65
|
-
|
73
|
+
x86_64-darwin-21
|
74
|
+
x86_64-linux
|
66
75
|
|
67
76
|
DEPENDENCIES
|
68
77
|
activesupport
|
78
|
+
debug
|
69
79
|
orthoses!
|
70
80
|
rake (~> 13.0)
|
71
81
|
rbs
|
@@ -1,8 +1,8 @@
|
|
1
1
|
PATH
|
2
2
|
remote: ../..
|
3
3
|
specs:
|
4
|
-
orthoses (1.
|
5
|
-
rbs (~>
|
4
|
+
orthoses (1.6.0)
|
5
|
+
rbs (~> 3.0)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: https://rubygems.org/
|
@@ -13,7 +13,7 @@ GEM
|
|
13
13
|
minitest (> 5)
|
14
14
|
rack (3.0.2)
|
15
15
|
rake (13.0.6)
|
16
|
-
rbs (
|
16
|
+
rbs (3.0.4)
|
17
17
|
|
18
18
|
PLATFORMS
|
19
19
|
arm64-darwin-21
|
@@ -0,0 +1,28 @@
|
|
1
|
+
class Rack::Test::Cookie
|
2
|
+
attr_reader name: String
|
3
|
+
attr_reader value: String
|
4
|
+
attr_reader raw: String
|
5
|
+
private def initialize: (String raw, ?URI::Generic uri, ?String default_host) -> void
|
6
|
+
| (String raw, ?nil uri, ?String default_host) -> void
|
7
|
+
| (String raw, ?URI::HTTPS uri, ?String default_host) -> void
|
8
|
+
| (String raw, ?URI::HTTP uri, ?String default_host) -> void
|
9
|
+
def domain: () -> String
|
10
|
+
def secure?: () -> bool
|
11
|
+
def valid?: (URI::Generic uri) -> (bool | URI::RFC3986_Parser)
|
12
|
+
| (URI::HTTPS uri) -> bool
|
13
|
+
| (nil uri) -> nil
|
14
|
+
| (URI::HTTP uri) -> bool
|
15
|
+
private def default_uri: () -> Array[String?]
|
16
|
+
def http_only?: () -> bool
|
17
|
+
def empty?: () -> bool
|
18
|
+
def to_h: () -> Hash[String, String | bool]
|
19
|
+
def expires: () -> Time?
|
20
|
+
def expired?: () -> Integer?
|
21
|
+
def matches?: (URI::HTTPS uri) -> (Array[Integer] | bool)
|
22
|
+
| (URI::Generic uri) -> (Array[Integer] | bool)
|
23
|
+
| (URI::HTTP uri) -> (Array[Integer] | bool)
|
24
|
+
def path: () -> String
|
25
|
+
def replaces?: (Rack::Test::Cookie other) -> String
|
26
|
+
def <=>: (Rack::Test::Cookie other) -> String
|
27
|
+
alias to_hash to_h
|
28
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
class Rack::Test::CookieJar
|
2
|
+
private def initialize: (?Array[untyped] cookies, ?String default_host) -> void
|
3
|
+
private def each_cookie_for: (URI::Generic uri) -> (Array[untyped] | String | bool)
|
4
|
+
| (URI::HTTP uri) -> (Array[untyped] | String | bool)
|
5
|
+
| (nil uri) -> String
|
6
|
+
| (URI::HTTPS uri) -> (Array[untyped] | String)
|
7
|
+
def for: (URI::Generic uri) -> (Array[Rack::Test::Cookie] | String | Time)
|
8
|
+
| (URI::HTTP uri) -> (Array[Rack::Test::Cookie] | String | Time)
|
9
|
+
| (nil uri) -> String
|
10
|
+
| (URI::HTTPS uri) -> (Array[Rack::Test::Cookie] | String)
|
11
|
+
def merge: (nil raw_cookies, ?URI::Generic uri) -> nil
|
12
|
+
| (String raw_cookies, ?URI::Generic uri) -> Rack::QueryParser::Params
|
13
|
+
| (nil raw_cookies, ?URI::HTTP uri) -> nil
|
14
|
+
| (String raw_cookies, ?nil uri) -> Array[nil]
|
15
|
+
| (nil raw_cookies, ?URI::HTTPS uri) -> nil
|
16
|
+
| (Array[String] raw_cookies, ?URI::Generic uri) -> Rack::QueryParser::Params
|
17
|
+
| (String raw_cookies, ?URI::HTTPS uri) -> Rack::QueryParser::Params
|
18
|
+
| (String raw_cookies, ?URI::HTTP uri) -> Rack::QueryParser::Params
|
19
|
+
| (Array[String] raw_cookies, ?nil uri) -> Array[nil]
|
20
|
+
def []: (String name) -> String?
|
21
|
+
| (Symbol name) -> String
|
22
|
+
private def initialize_copy: (Rack::Test::CookieJar other) -> Array[untyped]
|
23
|
+
def <<: (Rack::Test::Cookie new_cookie) -> (Array[Rack::Test::Cookie] | String)
|
24
|
+
def []=: (String name, String value) -> String
|
25
|
+
def to_hash: () -> (Hash[untyped, untyped] | String)
|
26
|
+
def get_cookie: (String name) -> String?
|
27
|
+
def delete: (String name) -> String
|
28
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class Rack::Test::FakeApp
|
2
|
+
private def handle: (Hash[String, Rack::Lint::Wrapper::InputWrapper | Rack::Lint::Wrapper::ErrorWrapper | String | bool] env) -> nil
|
3
|
+
| (Hash[String, Hash[Symbol, Symbol] | Rack::Lint::Wrapper::InputWrapper | Rack::Lint::Wrapper::ErrorWrapper | String | bool] env) -> nil
|
4
|
+
| (Hash[String, Hash[Symbol, String] | Rack::Lint::Wrapper::InputWrapper | Rack::Lint::Wrapper::ErrorWrapper | String | bool] env) -> nil
|
5
|
+
| (Hash[String, Hash[untyped, untyped] | Rack::Lint::Wrapper::InputWrapper | Rack::Lint::Wrapper::ErrorWrapper | String | bool] env) -> nil
|
6
|
+
| (Hash[String, Hash[String, String] | Rack::Lint::Wrapper::InputWrapper | Rack::Lint::Wrapper::ErrorWrapper | String | bool] env) -> nil
|
7
|
+
def call: (Hash[String, Rack::Lint::Wrapper::InputWrapper | Rack::Lint::Wrapper::ErrorWrapper | String | bool] env) -> nil
|
8
|
+
| (Hash[String, Hash[Symbol, Symbol] | Rack::Lint::Wrapper::InputWrapper | Rack::Lint::Wrapper::ErrorWrapper | String | bool] env) -> nil
|
9
|
+
| (Hash[String, Hash[Symbol, String] | Rack::Lint::Wrapper::InputWrapper | Rack::Lint::Wrapper::ErrorWrapper | String | bool] env) -> nil
|
10
|
+
| (Hash[String, Hash[untyped, untyped] | Rack::Lint::Wrapper::InputWrapper | Rack::Lint::Wrapper::ErrorWrapper | String | bool] env) -> nil
|
11
|
+
| (Hash[String, Hash[String, String] | Rack::Lint::Wrapper::InputWrapper | Rack::Lint::Wrapper::ErrorWrapper | String | bool] env) -> nil
|
12
|
+
private def new_cookie_count: (Rack::Request req) -> Hash[untyped, untyped]
|
13
|
+
end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
class Rack::Test::InputRewinder
|
2
|
+
private def initialize: (Rack::Lint app) -> void
|
3
|
+
def call: (Hash[String, StringIO | String | bool] env) -> Integer
|
4
|
+
| (Hash[String, Hash[Symbol, Symbol] | StringIO | String | bool] env) -> Integer
|
5
|
+
| (Hash[String, Hash[Symbol, String] | StringIO | String | bool] env) -> Integer
|
6
|
+
| (Hash[String, Hash[untyped, untyped] | StringIO | String | bool] env) -> Integer
|
7
|
+
| (Hash[String, Hash[String, String] | StringIO | String | bool] env) -> Integer
|
8
|
+
end
|
@@ -0,0 +1,98 @@
|
|
1
|
+
module Rack::Test::Methods
|
2
|
+
attr_accessor _rack_test_current_session: Rack::Test::Session?
|
3
|
+
|
4
|
+
def build_rack_test_session: (Symbol _name) -> (Rack::Test::InputRewinder | Proc | Rack::Test::Session)
|
5
|
+
| (bool _name) -> Rack::Test::InputRewinder
|
6
|
+
| (nil _name) -> Rack::Test::InputRewinder
|
7
|
+
|
8
|
+
def rack_test_session: (?Symbol name) -> (Rack::Test::Session | String)
|
9
|
+
| (?bool name) -> Rack::Test::Session
|
10
|
+
| (?nil name) -> Rack::Test::Session
|
11
|
+
|
12
|
+
def current_session: () -> Rack::Test::Session
|
13
|
+
|
14
|
+
def request: (*Array[String] args, **untyped) ?{ (*untyped) -> untyped } -> (Array[nil] | Rack::Test::Session)
|
15
|
+
| (*Array[Hash[String, String] | String] args, **untyped) ?{ (*untyped) -> untyped } -> (Array[nil] | Rack::Test::Session)
|
16
|
+
| (*Array[Hash[Symbol, Hash[String, String]] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
17
|
+
| (*Array[Hash[Symbol, Hash[untyped, untyped]] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
18
|
+
| (*Array[Hash[Symbol, String] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
19
|
+
| (*Array[Hash[Symbol, Hash[String, String] | Symbol] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
20
|
+
| (*Array[Hash[Symbol, Hash[Symbol, Hash[Symbol, String]]] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
21
|
+
| (*Array[Hash[Symbol, Symbol] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
22
|
+
| (*Array[Hash[Symbol, Hash[Symbol, Hash[Symbol, String]] | Symbol] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
23
|
+
| (*Array[Hash[Symbol, Symbol | String] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
24
|
+
| (*Array[Hash[Symbol | String, Hash[String, String] | Symbol | String] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
25
|
+
| (*Array[Hash[Symbol, Hash[String, String] | Symbol | bool] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
26
|
+
| (*Array[Hash[Symbol, Hash[Symbol, Integer]] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
27
|
+
| (*Array[Hash[Symbol, bool] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
28
|
+
| (*Array[Hash[String, Hash[Symbol, Symbol]] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Array[nil]
|
29
|
+
|
30
|
+
def last_request: (*Array[untyped] args, **untyped) ?{ (*untyped) -> untyped } -> (Rack::Request | Rack::Test::Session)
|
31
|
+
|
32
|
+
def get: (*Array[String] args, **untyped) ?{ (*untyped) -> untyped } -> (Array[nil] | Rack::Test::Session)
|
33
|
+
| (*Array[Hash[String, String] | String] args, **untyped) ?{ (*untyped) -> untyped } -> (Array[nil] | Rack::Test::Session)
|
34
|
+
| (*Array[Hash[untyped, untyped] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
35
|
+
| (*Array[String?] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
36
|
+
| (*Array[Hash[Symbol, String] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
37
|
+
| (*Array[Hash[String, Hash[String, String]] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
38
|
+
| (*Array[(Hash[String, String] | String)?] args, **untyped) ?{ (*untyped) -> untyped } -> Array[nil]
|
39
|
+
|
40
|
+
def last_response: (*Array[untyped] args, **untyped) ?{ (*untyped) -> untyped } -> (Rack::MockResponse | Rack::Test::Session)
|
41
|
+
|
42
|
+
def options: (*Array[String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
43
|
+
| (*Array[String?] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
44
|
+
| (*Array[Hash[untyped, untyped] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
45
|
+
|
46
|
+
def custom_request: (*Array[Hash[untyped, untyped] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
47
|
+
| (*Array[String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
48
|
+
|
49
|
+
def delete: (*Array[Hash[untyped, untyped] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
50
|
+
| (*Array[String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
51
|
+
| (*Array[String?] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
52
|
+
| (*Array[Hash[Symbol, String] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
53
|
+
|
54
|
+
def patch: (*Array[String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
55
|
+
| (*Array[Hash[untyped, untyped] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
56
|
+
| (*Array[String?] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
57
|
+
|
58
|
+
def put: (*Array[String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
59
|
+
| (*Array[Hash[untyped, untyped] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
60
|
+
| (*Array[String?] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
61
|
+
|
62
|
+
def post: (*Array[Hash[String, String] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
63
|
+
| (*Array[String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
64
|
+
| (*Array[String?] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
65
|
+
| (*Array[Hash[Symbol, String] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
66
|
+
| (*Array[Hash[untyped, untyped] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
67
|
+
| (*Array[Hash[String, Array[Rack::Test::UploadedFile]] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
68
|
+
| (*Array[Hash[String, Hash[String, Hash[String, String]] | Rack::Test::UploadedFile] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
69
|
+
| (*Array[Hash[String, Hash[String, String] | Rack::Test::UploadedFile] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
70
|
+
| (*Array[Hash[String, Rack::Test::UploadedFile | String] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
71
|
+
| (*Array[Hash[String, Rack::Test::UploadedFile] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
72
|
+
| (*Array[Hash[String, Rack::Test::UploadedFile] | Hash[String, String] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
73
|
+
| (*Array[Hash[String, Array[String] | Rack::Test::UploadedFile] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
74
|
+
|
75
|
+
def env: (*Array[Hash[Symbol, String] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
76
|
+
| (*Array[Hash[Symbol, Symbol] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Hash[Symbol, Symbol]
|
77
|
+
| (*Array[String?] args, **untyped) ?{ (*untyped) -> untyped } -> Hash[Symbol, String]
|
78
|
+
|
79
|
+
def follow_redirect!: (*Array[untyped] args, **untyped) ?{ (*untyped) -> untyped } -> (Rack::Test::Session | String)
|
80
|
+
|
81
|
+
def header: (*Array[String] args, **untyped) ?{ (*untyped) -> untyped } -> (Rack::Test::Session | String)
|
82
|
+
| (*Array[String?] args, **untyped) ?{ (*untyped) -> untyped } -> String
|
83
|
+
|
84
|
+
def head: (*Array[String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
85
|
+
| (*Array[String?] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
86
|
+
| (*Array[Hash[untyped, untyped] | String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
87
|
+
|
88
|
+
def basic_authorize: (*Array[String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
89
|
+
|
90
|
+
def set_cookie: (*Array[String] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
91
|
+
| (*Array[Array[String]] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::Session
|
92
|
+
|
93
|
+
def with_session: (Symbol name) -> Rack::Test::Session?
|
94
|
+
|
95
|
+
def clear_cookies: (*Array[untyped] args, **untyped) ?{ (*untyped) -> untyped } -> Rack::Test::CookieJar
|
96
|
+
|
97
|
+
alias rack_mock_session rack_test_session
|
98
|
+
end
|
@@ -0,0 +1,186 @@
|
|
1
|
+
class Rack::Test::Session
|
2
|
+
attr_accessor cookie_jar: Rack::Test::CookieJar
|
3
|
+
def clear_cookies: () -> Rack::Test::CookieJar
|
4
|
+
private def initialize: (Rack::Test::InputRewinder app, ?String default_host) -> void
|
5
|
+
| (Proc app, ?String default_host) -> void
|
6
|
+
def self.new: (Rack::Test::InputRewinder app, ?String default_host) -> Rack::Test::Session
|
7
|
+
| (Proc app, ?String default_host) -> Rack::Test::Session
|
8
|
+
| (Rack::Test::Session app, ?String default_host) -> Rack::Test::Session
|
9
|
+
private def parse_uri: (String path, Hash[untyped, untyped] env) -> Array[String?]
|
10
|
+
| (String path, Hash[String, String] env) -> Array[String?]
|
11
|
+
| (String path, Hash[Symbol, bool] env) -> Array[String?]
|
12
|
+
| (String path, Hash[Symbol, Hash[String, String]] env) -> Array[String?]
|
13
|
+
| (String path, Hash[Symbol, Hash[untyped, untyped]] env) -> Array[String?]
|
14
|
+
| (String path, Hash[Symbol, String] env) -> Array[String?]
|
15
|
+
| (String path, Hash[Symbol, Hash[String, String] | Symbol] env) -> Array[String?]
|
16
|
+
| (String path, Hash[Symbol, Hash[Symbol, Hash[Symbol, String]]] env) -> Array[String?]
|
17
|
+
| (String path, Hash[Symbol, Symbol] env) -> Array[String?]
|
18
|
+
| (String path, Hash[Symbol, Hash[Symbol, Hash[Symbol, String]] | Symbol] env) -> Array[String?]
|
19
|
+
| (String path, Hash[Symbol, Symbol | String] env) -> Array[String?]
|
20
|
+
| (String path, Hash[Symbol | String, Hash[String, String] | Symbol | String] env) -> Array[String?]
|
21
|
+
| (String path, Hash[Symbol, Hash[String, String] | Symbol | bool] env) -> Array[String?]
|
22
|
+
| (String path, Hash[Symbol, Hash[Symbol, Integer]] env) -> Array[String?]
|
23
|
+
| (String path, Hash[String, Hash[Symbol, Symbol]] env) -> Array[String?]
|
24
|
+
| (String path, Hash[String, Hash[untyped, untyped] | String] env) -> Array[String?]
|
25
|
+
| (String path, Hash[String, Hash[String, String]] env) -> Array[String?]
|
26
|
+
def request: (String uri, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> String?
|
27
|
+
| (String uri, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> nil
|
28
|
+
| (String uri, ?Hash[Symbol, Hash[String, String]] env) ?{ (*untyped) -> untyped } -> nil
|
29
|
+
| (String uri, ?Hash[Symbol, Hash[untyped, untyped]] env) ?{ (*untyped) -> untyped } -> nil
|
30
|
+
| (String uri, ?Hash[Symbol, String] env) ?{ (*untyped) -> untyped } -> nil
|
31
|
+
| (String uri, ?Hash[Symbol, Hash[String, String] | Symbol] env) ?{ (*untyped) -> untyped } -> nil
|
32
|
+
| (String uri, ?Hash[Symbol, Hash[Symbol, Hash[Symbol, String]]] env) ?{ (*untyped) -> untyped } -> nil
|
33
|
+
| (String uri, ?Hash[Symbol, Symbol] env) ?{ (*untyped) -> untyped } -> nil
|
34
|
+
| (String uri, ?Hash[Symbol, Hash[Symbol, Hash[Symbol, String]] | Symbol] env) ?{ (*untyped) -> untyped } -> nil
|
35
|
+
| (String uri, ?Hash[Symbol, Symbol | String] env) ?{ (*untyped) -> untyped } -> nil
|
36
|
+
| (String uri, ?Hash[Symbol | String, Hash[String, String] | Symbol | String] env) ?{ (*untyped) -> untyped } -> nil
|
37
|
+
| (String uri, ?Hash[Symbol, Hash[String, String] | Symbol | bool] env) ?{ (*untyped) -> untyped } -> nil
|
38
|
+
| (String uri, ?Hash[Symbol, Hash[Symbol, Integer]] env) ?{ (*untyped) -> untyped } -> nil
|
39
|
+
| (String uri, ?Hash[Symbol, bool] env) ?{ (*untyped) -> untyped } -> nil
|
40
|
+
| (String uri, ?Hash[String, Hash[Symbol, Symbol]] env) ?{ (*untyped) -> untyped } -> nil
|
41
|
+
private def env_for: (URI::Generic uri, Hash[untyped, untyped] env) -> (singleton(URI::Generic) | String)
|
42
|
+
| (URI::Generic uri, Hash[Symbol, Hash[untyped, untyped] | String] env) -> singleton(URI::Generic)
|
43
|
+
| (URI::Generic uri, Hash[Symbol, String?] env) -> singleton(URI::Generic)
|
44
|
+
| (URI::Generic uri, Hash[String | Symbol, Hash[untyped, untyped] | String] env) -> singleton(URI::Generic)
|
45
|
+
| (URI::HTTP uri, Hash[Symbol, Hash[untyped, untyped] | String] env) -> singleton(URI::HTTP)
|
46
|
+
| (URI::Generic uri, Hash[Symbol, Hash[untyped, untyped] | bool | String] env) -> singleton(URI::Generic)
|
47
|
+
| (URI::Generic uri, Hash[Symbol, String] env) -> singleton(URI::Generic)
|
48
|
+
| (URI::Generic uri, Hash[Symbol, Hash[Symbol, String] | String] env) -> singleton(URI::Generic)
|
49
|
+
| (URI::Generic uri, Hash[Symbol, Hash[String, String] | String] env) -> singleton(URI::Generic)
|
50
|
+
| (URI::Generic uri, Hash[Symbol, Hash[String, Array[Rack::Test::UploadedFile]] | String] env) -> singleton(URI::Generic)
|
51
|
+
| (URI::Generic uri, Hash[String, String] env) -> (singleton(URI::Generic) | String)
|
52
|
+
| (URI::Generic uri, Hash[Symbol, Hash[String, String]] env) -> singleton(URI::Generic)
|
53
|
+
| (URI::HTTPS uri, Hash[untyped, untyped] env) -> singleton(URI::HTTPS)
|
54
|
+
| (URI::Generic uri, Hash[Symbol, Hash[untyped, untyped]] env) -> singleton(URI::Generic)
|
55
|
+
| (URI::HTTP uri, Hash[untyped, untyped] env) -> singleton(URI::HTTP)
|
56
|
+
| (URI::Generic uri, Hash[Symbol, Hash[String, String] | Symbol] env) -> singleton(URI::Generic)
|
57
|
+
| (URI::Generic uri, Hash[Symbol, Hash[Symbol, Hash[Symbol, String]]] env) -> singleton(URI::Generic)
|
58
|
+
| (URI::Generic uri, Hash[Symbol, Symbol] env) -> singleton(URI::Generic)
|
59
|
+
| (URI::Generic uri, Hash[Symbol, Hash[Symbol, Hash[Symbol, String]] | Symbol] env) -> singleton(URI::Generic)
|
60
|
+
| (URI::Generic uri, Hash[Symbol, Symbol | String] env) -> singleton(URI::Generic)
|
61
|
+
| (URI::Generic uri, Hash[Symbol | String, Hash[String, String] | Symbol | String] env) -> singleton(URI::Generic)
|
62
|
+
| (URI::Generic uri, Hash[Symbol, Hash[String, String] | Symbol | bool] env) -> singleton(URI::Generic)
|
63
|
+
| (URI::Generic uri, Hash[Symbol, Hash[Symbol, Integer]] env) -> singleton(URI::Generic)
|
64
|
+
| (URI::Generic uri, Hash[Symbol, bool] env) -> singleton(URI::Generic)
|
65
|
+
| (URI::Generic uri, Hash[Symbol, Hash[String, Hash[String, Hash[String, String]] | Rack::Test::UploadedFile] | String] env) -> singleton(URI::Generic)
|
66
|
+
| (URI::Generic uri, Hash[Symbol, Hash[String, Hash[String, String] | Rack::Test::UploadedFile] | String] env) -> singleton(URI::Generic)
|
67
|
+
| (URI::Generic uri, Hash[Symbol, Hash[String, Rack::Test::UploadedFile | String] | String] env) -> singleton(URI::Generic)
|
68
|
+
| (URI::Generic uri, Hash[Symbol, Hash[String, Rack::Test::UploadedFile] | String] env) -> singleton(URI::Generic)
|
69
|
+
| (URI::Generic uri, Hash[String | Symbol, Hash[String, Rack::Test::UploadedFile] | String] env) -> singleton(URI::Generic)
|
70
|
+
| (URI::Generic uri, Hash[Symbol, Hash[String, Array[String] | Rack::Test::UploadedFile] | String] env) -> singleton(URI::Generic)
|
71
|
+
| (URI::Generic uri, Hash[String, Hash[Symbol, Symbol]] env) -> singleton(URI::Generic)
|
72
|
+
| (URI::HTTP uri, Hash[String | Symbol, Hash[untyped, untyped] | String] env) -> singleton(URI::HTTP)
|
73
|
+
| (URI::HTTPS uri, Hash[String | Symbol, Hash[untyped, untyped] | String] env) -> singleton(URI::HTTPS)
|
74
|
+
| (URI::Generic uri, Hash[Symbol, Hash[String, Hash[String, String]] | String] env) -> singleton(URI::Generic)
|
75
|
+
| (URI::Generic uri, Hash[String | Symbol, Hash[String, String] | String] env) -> singleton(URI::Generic)
|
76
|
+
| (URI::Generic uri, Hash[String | Symbol, String?] env) -> singleton(URI::Generic)
|
77
|
+
| (URI::HTTPS uri, Hash[Symbol, Hash[String, String] | String] env) -> singleton(URI::HTTPS)
|
78
|
+
| (URI::HTTPS uri, Hash[Symbol, Hash[untyped, untyped] | String] env) -> singleton(URI::HTTPS)
|
79
|
+
| (URI::HTTP uri, Hash[Symbol, Hash[String, String] | String] env) -> singleton(URI::HTTP)
|
80
|
+
private def process_request: (URI::Generic uri, Hash[String, StringIO | String | bool] env) -> Rack::Test::CookieJar
|
81
|
+
| (URI::HTTP uri, Hash[String, StringIO | String | bool] env) -> Rack::Test::CookieJar
|
82
|
+
| (URI::HTTPS uri, Hash[String, StringIO | String | bool] env) -> Rack::Test::CookieJar
|
83
|
+
| (URI::Generic uri, Hash[String, Hash[Symbol, Symbol] | StringIO | String | bool] env) -> Rack::Test::CookieJar
|
84
|
+
| (URI::Generic uri, Hash[String, Hash[Symbol, String] | StringIO | String | bool] env) -> Rack::Test::CookieJar
|
85
|
+
| (URI::HTTP uri, Hash[String, Hash[untyped, untyped] | StringIO | String | bool] env) -> Rack::Test::CookieJar
|
86
|
+
| (URI::HTTPS uri, Hash[String, Hash[untyped, untyped] | StringIO | String | bool] env) -> Rack::Test::CookieJar
|
87
|
+
| (URI::Generic uri, Hash[String, Hash[String, String] | StringIO | String | bool] env) -> Rack::Test::CookieJar
|
88
|
+
private def close_body: (Rack::Lint::Wrapper body) -> nil
|
89
|
+
| (untyped body) -> nil
|
90
|
+
| (Array[String] body) -> nil
|
91
|
+
| (Array[untyped] body) -> nil
|
92
|
+
def last_response: () -> Rack::MockResponse
|
93
|
+
def last_request: () -> Rack::Request
|
94
|
+
def after_request: () ?{ (*untyped) -> untyped } -> Array[Proc]
|
95
|
+
def custom_request: (String verb, String uri, ?Hash[untyped, untyped] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> String?
|
96
|
+
| (String verb, String uri, ?nil params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> nil
|
97
|
+
| (String verb, String uri, ?Hash[untyped, untyped] params, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> nil
|
98
|
+
| (String verb, String uri, ?Hash[untyped, untyped] params, ?Hash[Symbol, bool] env) ?{ (*untyped) -> untyped } -> nil
|
99
|
+
| (String verb, String uri, ?String params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> nil
|
100
|
+
| (String verb, String uri, ?Hash[Symbol, String] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> nil
|
101
|
+
| (String verb, String uri, ?Hash[String, String] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> String?
|
102
|
+
| (String verb, String uri, ?Hash[String, Array[Rack::Test::UploadedFile]] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> nil
|
103
|
+
| (String verb, String uri, ?Hash[String, Hash[String, Hash[String, String]] | Rack::Test::UploadedFile] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> nil
|
104
|
+
| (String verb, String uri, ?Hash[String, Hash[String, String] | Rack::Test::UploadedFile] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> nil
|
105
|
+
| (String verb, String uri, ?Hash[String, Rack::Test::UploadedFile | String] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> nil
|
106
|
+
| (String verb, String uri, ?Hash[String, Rack::Test::UploadedFile] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> nil
|
107
|
+
| (String verb, String uri, ?Hash[String, Rack::Test::UploadedFile] params, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> nil
|
108
|
+
| (String verb, String uri, ?Hash[String, Array[String] | Rack::Test::UploadedFile] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> nil
|
109
|
+
| (String verb, String uri, ?Hash[untyped, untyped] params, ?Hash[String, Hash[untyped, untyped] | String] env) ?{ (*untyped) -> untyped } -> String
|
110
|
+
| (String verb, String uri, ?Hash[String, String] params, ?Hash[String, Hash[untyped, untyped] | String] env) ?{ (*untyped) -> untyped } -> String
|
111
|
+
| (String verb, String uri, ?Hash[untyped, untyped] params, ?Hash[String, Hash[String, String]] env) ?{ (*untyped) -> untyped } -> nil
|
112
|
+
| (String verb, String uri, ?Hash[String, Hash[String, String]] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> nil
|
113
|
+
| (String verb, String uri, ?Hash[String, String] params, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> nil
|
114
|
+
| (String verb, String uri, ?nil params, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> nil
|
115
|
+
def get: (String uri, ?Hash[untyped, untyped] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
116
|
+
| (String uri, ?Hash[String, String] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
117
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[String, Hash[String, String]] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
118
|
+
| (String uri, ?nil params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
119
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
120
|
+
| (String uri, ?Hash[Symbol, String] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
121
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[Symbol, bool] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
122
|
+
| (String uri, ?Hash[String, Hash[String, String]] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
123
|
+
| (String uri, ?Hash[String, String] params, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
124
|
+
| (String uri, ?nil params, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
125
|
+
private def append_query_params: (Array[nil] query_array, Hash[untyped, untyped] query_params) -> Array[String?]
|
126
|
+
| (Array[String] query_array, Hash[untyped, untyped] query_params) -> Array[String]
|
127
|
+
| (Array[nil] query_array, Hash[String, String] query_params) -> String
|
128
|
+
| (Array[String] query_array, String query_params) -> Hash[untyped, untyped]
|
129
|
+
| (Array[String?] query_array, Hash[String, String] query_params) -> String
|
130
|
+
| (Array[String] query_array, Hash[Symbol, Hash[Symbol, String]] query_params) -> String
|
131
|
+
| (Array[String] query_array, Hash[Symbol, Integer] query_params) -> String
|
132
|
+
| (Array[nil] query_array, Hash[Symbol, String] query_params) -> String
|
133
|
+
| (Array[nil] query_array, Hash[String, Hash[String, String]] query_params) -> String
|
134
|
+
def restore_state: () -> nil
|
135
|
+
def options: (String uri, ?Hash[untyped, untyped] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
136
|
+
| (String uri, ?nil params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
137
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
138
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[Symbol, bool] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
139
|
+
def delete: (String uri, ?Hash[untyped, untyped] params, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
140
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
141
|
+
| (String uri, ?String params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
142
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[Symbol, bool] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
143
|
+
| (String uri, ?nil params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
144
|
+
| (String uri, ?Hash[Symbol, String] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
145
|
+
def patch: (String uri, ?String params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
146
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
147
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
148
|
+
| (String uri, ?nil params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
149
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[Symbol, bool] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
150
|
+
def put: (String uri, ?Hash[untyped, untyped] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
151
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
152
|
+
| (String uri, ?nil params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
153
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[Symbol, bool] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
154
|
+
| (String uri, ?String params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
155
|
+
def post: (String uri, ?Hash[String, String] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
156
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
157
|
+
| (String uri, ?nil params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
158
|
+
| (String uri, ?Hash[Symbol, String] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
159
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[Symbol, bool] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
160
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
161
|
+
| (String uri, ?String params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
162
|
+
| (String uri, ?Hash[String, Array[Rack::Test::UploadedFile]] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
163
|
+
| (String uri, ?Hash[String, Hash[String, Hash[String, String]] | Rack::Test::UploadedFile] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
164
|
+
| (String uri, ?Hash[String, Hash[String, String] | Rack::Test::UploadedFile] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
165
|
+
| (String uri, ?Hash[String, Rack::Test::UploadedFile | String] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
166
|
+
| (String uri, ?Hash[String, Rack::Test::UploadedFile] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
167
|
+
| (String uri, ?Hash[String, Rack::Test::UploadedFile] params, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
168
|
+
| (String uri, ?Hash[String, Array[String] | Rack::Test::UploadedFile] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
169
|
+
private def multipart_content_type: (Hash[String | Symbol, bool | String] env) -> String
|
170
|
+
| (Hash[String | Symbol, bool | String | Symbol] env) -> String
|
171
|
+
def env: (String name, Hash[Symbol, String] value) -> Hash[Symbol, String]
|
172
|
+
| (String name, Hash[Symbol, Symbol] value) -> Hash[Symbol, Symbol]
|
173
|
+
| (String name, nil value) -> (Hash[Symbol, String] | String)
|
174
|
+
| (String name, String value) -> String
|
175
|
+
def follow_redirect!: () -> bool?
|
176
|
+
def header: (String name, String value) -> String
|
177
|
+
| (String name, nil value) -> String
|
178
|
+
def head: (String uri, ?Hash[untyped, untyped] params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
179
|
+
| (String uri, ?nil params, ?Hash[untyped, untyped] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
180
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[String, String] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
181
|
+
| (String uri, ?Hash[untyped, untyped] params, ?Hash[Symbol, bool] env) ?{ (*untyped) -> untyped } -> Array[nil]
|
182
|
+
def basic_authorize: (String username, String password) -> String
|
183
|
+
def set_cookie: (String cookie, ?nil uri) -> Rack::Test::CookieJar
|
184
|
+
| (String cookie, ?URI::Generic uri) -> Rack::Test::CookieJar
|
185
|
+
| (Array[String] cookie, ?nil uri) -> Rack::Test::CookieJar
|
186
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
class Rack::Test::UploadedFile
|
2
|
+
attr_reader tempfile: Tempfile?
|
3
|
+
attr_reader original_filename: String
|
4
|
+
attr_accessor content_type: String
|
5
|
+
private def initialize_from_file_path: (String path) -> singleton(File)
|
6
|
+
private def initialize: (String content, ?String content_type, ?bool binary, ?original_filename: nil) -> void
|
7
|
+
| (StringIO content, ?String content_type, ?bool binary, ?original_filename: String) -> void
|
8
|
+
| (String content, ?String content_type, ?bool binary, ?original_filename: String) -> void
|
9
|
+
| (StringIO content, ?String content_type, ?bool binary, ?original_filename: nil) -> void
|
10
|
+
def self.finalize: (Tempfile file) -> Proc
|
11
|
+
private def respond_to_missing?: (Symbol method_name, ?bool include_private) -> Tempfile?
|
12
|
+
def method_missing: (Symbol method_name, *Array[untyped] args) ?{ (*untyped) -> untyped } -> Tempfile
|
13
|
+
| (Symbol method_name, *Array[Encoding] args) ?{ (*untyped) -> untyped } -> Tempfile
|
14
|
+
def append_to: (String buffer) -> Tempfile
|
15
|
+
private def initialize_from_stringio: (StringIO stringio) -> StringIO
|
16
|
+
def path: () -> Tempfile
|
17
|
+
def self.actually_finalize: (Tempfile file) -> nil
|
18
|
+
end
|
@@ -0,0 +1,112 @@
|
|
1
|
+
module Rack::Test::Utils
|
2
|
+
def build_nested_query: (Hash[Symbol, Hash[Symbol, Array[Integer]]] value, ?nil prefix) -> String
|
3
|
+
| (Hash[Symbol, Array[Integer]] value, ?String prefix) -> String
|
4
|
+
| (Array[Integer] value, ?String prefix) -> String
|
5
|
+
| (Integer value, ?String prefix) -> String
|
6
|
+
| (Hash[Symbol, nil] value, ?nil prefix) -> String
|
7
|
+
| (nil value, ?String prefix) -> String
|
8
|
+
| (Hash[Symbol, Integer] value, ?nil prefix) -> String
|
9
|
+
| (Hash[String, Array[Integer]] value, ?nil prefix) -> String
|
10
|
+
| (nil value, ?nil prefix) -> String
|
11
|
+
| (Hash[Symbol, Array[Integer]] value, ?nil prefix) -> String
|
12
|
+
| (Hash[Symbol, Hash[Symbol, Integer]] value, ?nil prefix) -> String
|
13
|
+
| (Hash[Symbol, Integer] value, ?String prefix) -> String
|
14
|
+
| (Hash[Symbol, Array[untyped]] value, ?nil prefix) -> String
|
15
|
+
| (Array[untyped] value, ?String prefix) -> String
|
16
|
+
| (String value, ?nil prefix) -> String
|
17
|
+
| (Hash[Symbol, Array[Hash[Symbol, Integer]]] value, ?nil prefix) -> String
|
18
|
+
| (Array[Hash[Symbol, Integer]] value, ?String prefix) -> String
|
19
|
+
| (Hash[untyped, untyped] value, ?nil prefix) -> String
|
20
|
+
| (Hash[Symbol, String] value, ?nil prefix) -> String
|
21
|
+
| (String value, ?String prefix) -> String
|
22
|
+
| (Hash[String, String] value, ?nil prefix) -> String
|
23
|
+
| (Hash[String, Hash[String, String]] value, ?nil prefix) -> String
|
24
|
+
| (Hash[String, String] value, ?String prefix) -> String
|
25
|
+
| (Hash[Symbol, Hash[Symbol, String]] value, ?nil prefix) -> String
|
26
|
+
| (Hash[Symbol, String] value, ?String prefix) -> String
|
27
|
+
|
28
|
+
def build_multipart: (Hash[untyped, untyped] params, ?bool _first, ?bool multipart) -> nil
|
29
|
+
| (Hash[Symbol, String] params, ?bool _first, ?bool multipart) -> nil
|
30
|
+
| (Hash[String, String] params, ?bool _first, ?bool multipart) -> String?
|
31
|
+
| (Hash[String, Array[Rack::Test::UploadedFile]] params, ?bool _first, ?bool multipart) -> bool
|
32
|
+
| (Hash[Symbol, Hash[Symbol, String]] params, ?bool _first, ?bool multipart) -> nil
|
33
|
+
| (Hash[String, Hash[String, Hash[String, String]] | Rack::Test::UploadedFile] params, ?bool _first, ?bool multipart) -> bool
|
34
|
+
| (Hash[String, Hash[String, String] | Rack::Test::UploadedFile] params, ?bool _first, ?bool multipart) -> bool
|
35
|
+
| (Hash[String, Rack::Test::UploadedFile | String] params, ?bool _first, ?bool multipart) -> bool
|
36
|
+
| (Hash[String, Rack::Test::UploadedFile] params, ?bool _first, ?bool multipart) -> bool
|
37
|
+
| (Hash[String, Array[String] | Rack::Test::UploadedFile] params, ?bool _first, ?bool multipart) -> bool
|
38
|
+
| (Hash[String, Array[Hash[String, String]]] params, ?bool _first, ?bool multipart) -> nil
|
39
|
+
| (Hash[String, Array[Rack::Test::UploadedFile] | String] params, ?bool _first, ?bool multipart) -> bool
|
40
|
+
| (Hash[String, Array[Hash[String, String | Rack::Test::UploadedFile]] | Array[String]] params, ?bool _first, ?bool multipart) -> bool
|
41
|
+
| (Hash[String, Array[Rack::Test::UploadedFile | String]] params, ?bool _first, ?bool multipart) -> bool
|
42
|
+
| (Hash[String, Hash[String, String] | String | Rack::Test::UploadedFile] params, ?bool _first, ?bool multipart) -> bool
|
43
|
+
| (Hash[String, untyped] params, ?bool _first, ?bool multipart) -> bool
|
44
|
+
| (Hash[String, Hash[String, Array[Hash[String, String] | Hash[String, Array[Hash[String, String]] | String]]] | Rack::Test::UploadedFile] params, ?bool _first, ?bool multipart) -> bool
|
45
|
+
| (Hash[String, Array[Hash[String, String | Rack::Test::UploadedFile] | Hash[String, Array[String] | String]]] params, ?bool _first, ?bool multipart) -> bool
|
46
|
+
| (Hash[String, Array[Hash[String, String]] | Rack::Test::UploadedFile] params, ?bool _first, ?bool multipart) -> bool
|
47
|
+
| (Hash[String, String | Rack::Test::UploadedFile] params, ?bool _first, ?bool multipart) -> bool
|
48
|
+
| (Hash[String, Array[Hash[String, Rack::Test::UploadedFile | String]] | Array[String]] params, ?bool _first, ?bool multipart) -> bool
|
49
|
+
| (Hash[String, Array[Hash[String, Array[String] | String]]] params, ?bool _first, ?bool multipart) -> String
|
50
|
+
|
51
|
+
private def normalize_multipart_params: (Hash[String, Array[Rack::Test::UploadedFile]] params, ?bool first) -> Hash[String, Array[Rack::Test::UploadedFile]]
|
52
|
+
| (Hash[String, String] params, ?bool first) -> Hash[String, String]
|
53
|
+
| (Hash[String, Hash[String, String]] params, ?bool first) -> Hash[String, String]
|
54
|
+
| (Hash[String, Hash[String, Hash[String, String]] | Rack::Test::UploadedFile] params, ?bool first) -> Hash[String, Rack::Test::UploadedFile | String]
|
55
|
+
| (Hash[String, Hash[String, String] | Rack::Test::UploadedFile] params, ?bool first) -> Hash[String, Rack::Test::UploadedFile | String]
|
56
|
+
| (Hash[String, Rack::Test::UploadedFile | String] params, ?bool first) -> Hash[String, Rack::Test::UploadedFile | String]
|
57
|
+
| (Hash[String, Rack::Test::UploadedFile] params, ?bool first) -> Hash[String, Rack::Test::UploadedFile]
|
58
|
+
| (Hash[String, Array[String] | Rack::Test::UploadedFile] params, ?bool first) -> Hash[String, Array[String] | Rack::Test::UploadedFile]
|
59
|
+
| (Hash[String, Array[Rack::Test::UploadedFile] | String] params, ?bool first) -> Hash[String, Array[Rack::Test::UploadedFile] | String]
|
60
|
+
| (Hash[String, String | Rack::Test::UploadedFile] params, ?bool first) -> Hash[String, String | Rack::Test::UploadedFile]
|
61
|
+
| (Hash[String, Array[Hash[String, String | Rack::Test::UploadedFile]] | Array[String]] params, ?bool first) -> Hash[String, Array[Hash[String, String | Rack::Test::UploadedFile]] | Array[String]]
|
62
|
+
| (Hash[String, Array[Rack::Test::UploadedFile | String]] params, ?bool first) -> Hash[String, Array[Rack::Test::UploadedFile | String]]
|
63
|
+
| (Hash[String, Hash[String, String] | String | Rack::Test::UploadedFile] params, ?bool first) -> Hash[String, String | Rack::Test::UploadedFile]
|
64
|
+
| (Hash[String, untyped] params, ?bool first) -> Hash[String, untyped]
|
65
|
+
| (Hash[String, Array[Hash[String, String]] | String] params, ?bool first) -> Hash[String, Array[Hash[String, String]] | String]
|
66
|
+
| (Hash[String, Array[Hash[String, String] | Hash[String, Array[Hash[String, String]] | String]]] params, ?bool first) -> Hash[String, Array[Hash[String, String] | Hash[String, Array[Hash[String, String]] | String]]]
|
67
|
+
| (Hash[String, Hash[String, Array[Hash[String, String] | Hash[String, Array[Hash[String, String]] | String]]] | Rack::Test::UploadedFile] params, ?bool first) -> Hash[String, Array[Hash[String, String] | Hash[String, Array[Hash[String, String]] | String]] | Rack::Test::UploadedFile]
|
68
|
+
| (Hash[String, Array[String] | String] params, ?bool first) -> Hash[String, Array[String] | String]
|
69
|
+
| (Hash[String, Array[Hash[String, String | Rack::Test::UploadedFile] | Hash[String, Array[String] | String]]] params, ?bool first) -> Hash[String, Array[Hash[String, String | Rack::Test::UploadedFile] | Hash[String, Array[String] | String]]]
|
70
|
+
| (Hash[String, Array[Hash[String, String]] | Rack::Test::UploadedFile] params, ?bool first) -> Hash[String, Array[Hash[String, String]] | Rack::Test::UploadedFile]
|
71
|
+
| (Hash[String, Array[Hash[String, Rack::Test::UploadedFile | String]] | Array[String]] params, ?bool first) -> Hash[String, Array[Hash[String, Rack::Test::UploadedFile | String]] | Array[String]]
|
72
|
+
| (Hash[String, Array[Hash[String, Array[String] | String]]] params, ?bool first) -> Hash[String, Array[Hash[String, Array[String] | String]]]
|
73
|
+
|
74
|
+
private def _build_parts: (String buffer, Hash[String, Array[Rack::Test::UploadedFile]] parameters) -> File
|
75
|
+
| (String buffer, Hash[String, String] parameters) -> Array[Array[String]]
|
76
|
+
| (String buffer, Hash[String, Rack::Test::UploadedFile | String] parameters) -> File
|
77
|
+
| (String buffer, Hash[String, Rack::Test::UploadedFile] parameters) -> File
|
78
|
+
| (String buffer, Hash[String, Array[String] | Rack::Test::UploadedFile] parameters) -> File
|
79
|
+
| (String buffer, Hash[String, Array[Rack::Test::UploadedFile] | String] parameters) -> File
|
80
|
+
| (String buffer, Hash[String, String | Rack::Test::UploadedFile] parameters) -> File
|
81
|
+
| (String buffer, Hash[String, Array[Hash[String, String | Rack::Test::UploadedFile]] | Array[String]] parameters) -> singleton(Object)
|
82
|
+
| (String buffer, Hash[String, Array[Rack::Test::UploadedFile | String]] parameters) -> File
|
83
|
+
| (String buffer, Hash[String, untyped] parameters) -> bool
|
84
|
+
| (String buffer, Hash[String, Array[Hash[String, String] | Hash[String, Array[Hash[String, String]] | String]] | Rack::Test::UploadedFile] parameters) -> File
|
85
|
+
| (String buffer, Hash[String, Array[Hash[String, String]] | String] parameters) -> Array[Array[String] | Array[Hash[String, String]]]
|
86
|
+
| (String buffer, Hash[String, Array[Hash[String, String | Rack::Test::UploadedFile] | Hash[String, Array[String] | String]]] parameters) -> singleton(Object)
|
87
|
+
| (String buffer, Hash[String, Array[String] | String] parameters) -> Array[Array[String]]
|
88
|
+
| (String buffer, Hash[String, Array[Hash[String, String]] | Rack::Test::UploadedFile] parameters) -> File
|
89
|
+
| (String buffer, Hash[String, Array[Hash[String, Rack::Test::UploadedFile | String]] | Array[String]] parameters) -> singleton(Object)
|
90
|
+
| (String buffer, Hash[String, Array[Hash[String, Array[String] | String]]] parameters) -> Array[Array[Hash[String, Array[String] | String]]]
|
91
|
+
|
92
|
+
private def build_parts: (String buffer, Hash[String, Array[Rack::Test::UploadedFile]] parameters) -> singleton(Object)
|
93
|
+
| (String buffer, Hash[String, String] parameters) -> String
|
94
|
+
| (String buffer, Hash[String, Rack::Test::UploadedFile | String] parameters) -> singleton(Object)
|
95
|
+
| (String buffer, Hash[String, Rack::Test::UploadedFile] parameters) -> singleton(Object)
|
96
|
+
| (String buffer, Hash[String, Array[String] | Rack::Test::UploadedFile] parameters) -> singleton(Object)
|
97
|
+
| (String buffer, Hash[String, Array[Rack::Test::UploadedFile] | String] parameters) -> singleton(Object)
|
98
|
+
| (String buffer, Hash[String, Array[Hash[String, String | Rack::Test::UploadedFile]] | Array[String]] parameters) -> bool
|
99
|
+
| (String buffer, Hash[String, Array[Rack::Test::UploadedFile | String]] parameters) -> singleton(Object)
|
100
|
+
| (String buffer, Hash[String, String | Rack::Test::UploadedFile] parameters) -> singleton(Object)
|
101
|
+
| (String buffer, Hash[String, untyped] parameters) -> bool
|
102
|
+
| (String buffer, Hash[String, Array[Hash[String, String] | Hash[String, Array[Hash[String, String]] | String]] | Rack::Test::UploadedFile] parameters) -> singleton(Object)
|
103
|
+
| (String buffer, Hash[String, Array[Hash[String, String | Rack::Test::UploadedFile] | Hash[String, Array[String] | String]]] parameters) -> bool
|
104
|
+
| (String buffer, Hash[String, Array[Hash[String, String]] | Rack::Test::UploadedFile] parameters) -> singleton(Object)
|
105
|
+
| (String buffer, Hash[String, Array[Hash[String, Rack::Test::UploadedFile | String]] | Array[String]] parameters) -> bool
|
106
|
+
| (String buffer, Hash[String, Array[Hash[String, Array[String] | String]]] parameters) -> String
|
107
|
+
|
108
|
+
private def build_file_part: (String buffer, String parameter_name, Rack::Test::UploadedFile uploaded_file) -> String
|
109
|
+
| (String buffer, String parameter_name, untyped uploaded_file) -> String
|
110
|
+
|
111
|
+
private def build_primitive_part: (String buffer, String parameter_name, String value) -> String
|
112
|
+
end
|
@@ -9,32 +9,55 @@ module Orthoses
|
|
9
9
|
|
10
10
|
def update_decl
|
11
11
|
return unless @decl.respond_to?(:members)
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
# avoid to duplicate and keep order
|
16
|
-
uniq_map[Object.new] = member
|
17
|
-
else
|
18
|
-
key = member_key(member)
|
19
|
-
drop_member = uniq_map[key]
|
20
|
-
uniq_map[key] = member
|
21
|
-
if drop_member
|
22
|
-
Orthoses.logger.info("#{@decl.name} \"#{member.location.source}\" was droped since duplication")
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
12
|
+
|
13
|
+
uniq_map = uniq_members
|
14
|
+
drop_set_method_definition(uniq_map)
|
26
15
|
drop_known_method_definition(uniq_map)
|
16
|
+
|
27
17
|
@decl.members.replace(uniq_map.values)
|
28
18
|
end
|
29
19
|
|
30
20
|
private
|
31
21
|
|
22
|
+
def uniq_members
|
23
|
+
{}.tap do |uniq_map|
|
24
|
+
@decl.members.each do |member|
|
25
|
+
if member.instance_of?(RBS::AST::Members::MethodDefinition) && member.overloading?
|
26
|
+
# avoid to duplicate and keep order
|
27
|
+
uniq_map[Object.new] = member
|
28
|
+
else
|
29
|
+
key = member_key(member)
|
30
|
+
drop_member = uniq_map[key]
|
31
|
+
uniq_map[key] = member
|
32
|
+
if drop_member
|
33
|
+
Orthoses.logger.info("#{@decl.name} \"#{member.location.source}\" was droped since duplication")
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
def drop_set_method_definition(uniq_map)
|
41
|
+
attr_accessors = uniq_map.values.grep(RBS::AST::Members::AttrAccessor)
|
42
|
+
attr_accessors.each do |member|
|
43
|
+
uniq_map.delete([RBS::AST::Members::MethodDefinition, :"#{member.name}=", member.kind])
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
32
47
|
def drop_known_method_definition(uniq_map)
|
33
48
|
decl_name = @decl.name.absolute!
|
34
49
|
if m_entry = @env.class_decls[decl_name]
|
35
50
|
m_entry.decls.each do |d|
|
36
|
-
d.decl.members.
|
37
|
-
|
51
|
+
d.decl.members.each do |member|
|
52
|
+
case member
|
53
|
+
when RBS::AST::Members::LocationOnly
|
54
|
+
# ignore
|
55
|
+
when RBS::AST::Members::AttrAccessor
|
56
|
+
uniq_map.delete([RBS::AST::Members::MethodDefinition, member.name, member.kind])
|
57
|
+
uniq_map.delete([RBS::AST::Members::MethodDefinition, :"#{member.name}=", member.kind])
|
58
|
+
else
|
59
|
+
uniq_map.delete(member_key(member))
|
60
|
+
end
|
38
61
|
end
|
39
62
|
end
|
40
63
|
end
|
@@ -60,12 +83,11 @@ module Orthoses
|
|
60
83
|
when RBS::AST::Members::Alias
|
61
84
|
[RBS::AST::Members::MethodDefinition, member.new_name, member.kind]
|
62
85
|
when RBS::AST::Members::AttrAccessor
|
63
|
-
# FIXME: how to check "#{member.name}=" ?
|
64
86
|
[RBS::AST::Members::MethodDefinition, member.name, member.kind]
|
65
87
|
when RBS::AST::Members::AttrReader
|
66
88
|
[RBS::AST::Members::MethodDefinition, member.name, member.kind]
|
67
89
|
when RBS::AST::Members::AttrWriter
|
68
|
-
[RBS::AST::Members::MethodDefinition, "#{member.name}=", member.kind]
|
90
|
+
[RBS::AST::Members::MethodDefinition, :"#{member.name}=", member.kind]
|
69
91
|
else
|
70
92
|
[member.class, member.name]
|
71
93
|
end
|
@@ -16,9 +16,17 @@ module Orthoses
|
|
16
16
|
end
|
17
17
|
end
|
18
18
|
|
19
|
-
def initialize(
|
19
|
+
def initialize(
|
20
|
+
method_definition_filter: nil,
|
21
|
+
alias_filter: nil,
|
22
|
+
constant_filter: nil,
|
23
|
+
mixin_filter: nil,
|
24
|
+
attribute_filter: nil
|
25
|
+
)
|
20
26
|
@load_env = RBS::Environment.new
|
21
27
|
@known_env = Utils.rbs_environment(cache: false)
|
28
|
+
@method_definition_filter = method_definition_filter
|
29
|
+
@alias_filter = alias_filter
|
22
30
|
@constant_filter = constant_filter
|
23
31
|
@mixin_filter = mixin_filter
|
24
32
|
@attribute_filter = attribute_filter
|
@@ -34,7 +42,8 @@ module Orthoses
|
|
34
42
|
def write_to(store:)
|
35
43
|
each do |add_content|
|
36
44
|
content = store[add_content.name]
|
37
|
-
content.header
|
45
|
+
content.header ||= add_content.header
|
46
|
+
content.comment ||= add_content.comment
|
38
47
|
content.concat(add_content.body)
|
39
48
|
end
|
40
49
|
end
|
@@ -47,6 +56,7 @@ module Orthoses
|
|
47
56
|
@load_env.class_decls.each do |type_name, m_entry|
|
48
57
|
name = type_name.relative!.to_s
|
49
58
|
content = Content.new(name: name)
|
59
|
+
content.comment = m_entry.primary.decl.comment&.string&.gsub(/^/, "# ")
|
50
60
|
content.header = header_builder.build(entry: m_entry, name_hint: name)
|
51
61
|
decls_to_lines(m_entry.decls.map(&:decl)).each do |line|
|
52
62
|
content << line
|
@@ -94,9 +104,12 @@ module Orthoses
|
|
94
104
|
when RBS::AST::Declarations::Constant
|
95
105
|
next unless @constant_filter.nil? || @constant_filter.call(member)
|
96
106
|
when RBS::AST::Members::MethodDefinition
|
107
|
+
next unless @method_definition_filter.nil? || @method_definition_filter.call(member)
|
97
108
|
if last_visibility == :private && member.kind != :singleton_instance
|
98
109
|
member.instance_variable_set(:@visibility, :private)
|
99
110
|
end
|
111
|
+
when RBS::AST::Members::Alias
|
112
|
+
next unless @alias_filter.nil? || @alias_filter.call(member)
|
100
113
|
when RBS::AST::Members::Mixin
|
101
114
|
next unless @mixin_filter.nil? || @mixin_filter.call(member)
|
102
115
|
when RBS::AST::Members::Attribute
|
data/lib/orthoses/content.rb
CHANGED
@@ -74,12 +74,52 @@ module Orthoses
|
|
74
74
|
end
|
75
75
|
|
76
76
|
def original_rbs
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
77
|
+
io = StringIO.new
|
78
|
+
io.puts @comment if @comment
|
79
|
+
io.puts @header
|
80
|
+
@body.each do |line|
|
81
|
+
io.puts " #{line}"
|
82
|
+
end
|
83
|
+
io.puts "end"
|
84
|
+
io.string
|
85
|
+
end
|
86
|
+
|
87
|
+
def auto_header
|
88
|
+
env = Utils.rbs_environment
|
89
|
+
if entry = env.class_decls[TypeName(name).absolute!]
|
90
|
+
@header = Content::HeaderBuilder.new(env: env).build(entry: entry)
|
91
|
+
return
|
92
|
+
end
|
93
|
+
|
94
|
+
return unless @header.nil?
|
95
|
+
|
96
|
+
if interface?
|
97
|
+
self.header = "interface #{name}"
|
98
|
+
return
|
99
|
+
end
|
100
|
+
|
101
|
+
val = Object.const_get(name)
|
102
|
+
|
103
|
+
case val
|
104
|
+
when Class
|
105
|
+
superclass =
|
106
|
+
if val.superclass && val.superclass != Object
|
107
|
+
super_module_name = Utils.module_name(val.superclass)
|
108
|
+
|
109
|
+
if super_module_name && super_module_name != "Random::Base" # https://github.com/ruby/rbs/pull/977
|
110
|
+
" < ::#{super_module_name}#{temporary_type_params(super_module_name)}"
|
111
|
+
else
|
112
|
+
nil
|
113
|
+
end
|
114
|
+
else
|
115
|
+
nil
|
116
|
+
end
|
117
|
+
self.header = "class #{Utils.module_name(val)}#{type_params(name)}#{superclass}"
|
118
|
+
when Module
|
119
|
+
self.header = "module #{Utils.module_name(val)}#{type_params(name)}"
|
120
|
+
else
|
121
|
+
raise "#{val.inspect} is not class/module"
|
122
|
+
end
|
83
123
|
end
|
84
124
|
|
85
125
|
private
|
@@ -132,44 +172,6 @@ module Orthoses
|
|
132
172
|
raise
|
133
173
|
end
|
134
174
|
|
135
|
-
def auto_header
|
136
|
-
env = Utils.rbs_environment
|
137
|
-
if entry = env.class_decls[TypeName(name).absolute!]
|
138
|
-
@header = Content::HeaderBuilder.new(env: env).build(entry: entry)
|
139
|
-
return
|
140
|
-
end
|
141
|
-
|
142
|
-
return unless @header.nil?
|
143
|
-
|
144
|
-
if interface?
|
145
|
-
self.header = "interface #{name}"
|
146
|
-
return
|
147
|
-
end
|
148
|
-
|
149
|
-
val = Object.const_get(name)
|
150
|
-
|
151
|
-
case val
|
152
|
-
when Class
|
153
|
-
superclass =
|
154
|
-
if val.superclass && val.superclass != Object
|
155
|
-
super_module_name = Utils.module_name(val.superclass)
|
156
|
-
|
157
|
-
if super_module_name && super_module_name != "Random::Base" # https://github.com/ruby/rbs/pull/977
|
158
|
-
" < ::#{super_module_name}#{temporary_type_params(super_module_name)}"
|
159
|
-
else
|
160
|
-
nil
|
161
|
-
end
|
162
|
-
else
|
163
|
-
nil
|
164
|
-
end
|
165
|
-
self.header = "class #{Utils.module_name(val)}#{type_params(name)}#{superclass}"
|
166
|
-
when Module
|
167
|
-
self.header = "module #{Utils.module_name(val)}#{type_params(name)}"
|
168
|
-
else
|
169
|
-
raise "#{val.inspect} is not class/module"
|
170
|
-
end
|
171
|
-
end
|
172
|
-
|
173
175
|
def temporary_type_params(name)
|
174
176
|
Utils.known_type_params(name)&.then do |params|
|
175
177
|
if params.empty?
|
data/lib/orthoses/filter.rb
CHANGED
@@ -16,8 +16,8 @@ module Orthoses
|
|
16
16
|
def call
|
17
17
|
@loader.call.tap do |store|
|
18
18
|
store.filter! do |name, content|
|
19
|
-
@block.call(name, content).tap do
|
20
|
-
Orthoses.logger.debug("Filter
|
19
|
+
@block.call(name, content).tap do |bool|
|
20
|
+
Orthoses.logger.debug("[Filter] #{bool ? "Pass" : "Reject"} [#{name}]")
|
21
21
|
end
|
22
22
|
end
|
23
23
|
end
|
@@ -1,11 +1,23 @@
|
|
1
1
|
module Orthoses
|
2
2
|
# Call `rbs prototype rb` and add to store
|
3
3
|
# use Orthoses::RBSPrototypeRB,
|
4
|
-
# paths: Dir.glob("lib/**/*.rb")
|
4
|
+
# paths: Dir.glob("lib/**/*.rb"),
|
5
|
+
# method_definition_filter: ->(member) { false },
|
6
|
+
# alias_filter: ->(member) { false }
|
5
7
|
class RBSPrototypeRB
|
6
|
-
def initialize(
|
8
|
+
def initialize(
|
9
|
+
loader,
|
10
|
+
paths:,
|
11
|
+
method_definition_filter: nil,
|
12
|
+
alias_filter: nil,
|
13
|
+
constant_filter: nil,
|
14
|
+
mixin_filter: nil,
|
15
|
+
attribute_filter: nil
|
16
|
+
)
|
7
17
|
@loader = loader
|
8
18
|
@paths = paths
|
19
|
+
@method_definition_filter = method_definition_filter
|
20
|
+
@alias_filter = alias_filter
|
9
21
|
@constant_filter = constant_filter
|
10
22
|
@mixin_filter = mixin_filter
|
11
23
|
@attribute_filter = attribute_filter
|
@@ -23,6 +35,8 @@ module Orthoses
|
|
23
35
|
end
|
24
36
|
end
|
25
37
|
env = Orthoses::Content::Environment.new(
|
38
|
+
method_definition_filter: @method_definition_filter,
|
39
|
+
alias_filter: @alias_filter,
|
26
40
|
constant_filter: @constant_filter,
|
27
41
|
mixin_filter: @mixin_filter,
|
28
42
|
attribute_filter: @attribute_filter,
|
data/lib/orthoses/version.rb
CHANGED
data/sig/orthoses/builder.rbs
CHANGED
@@ -1,5 +1,14 @@
|
|
1
1
|
# THIS IS GENERATED CODE from `$ rake generate_self_sig`
|
2
2
|
|
3
|
+
# Middleware builder like the Rack
|
4
|
+
# Builder.new do
|
5
|
+
# use Orthoses::CreateFileByName
|
6
|
+
# use Orthoses::Constant
|
7
|
+
# use Orthoses::Mixin
|
8
|
+
# use Orthoses::Walk,
|
9
|
+
# root: "Foo"
|
10
|
+
# run ->() { require 'foo' }
|
11
|
+
# end
|
3
12
|
class Orthoses::Builder
|
4
13
|
def initialize: () ?{ () -> untyped } -> void
|
5
14
|
def use: (untyped middleware, *untyped args, **untyped key) ?{ () -> untyped } -> untyped
|
@@ -1,5 +1,17 @@
|
|
1
1
|
# THIS IS GENERATED CODE from `$ rake generate_self_sig`
|
2
2
|
|
3
|
+
# CallTracer::Lazy is possible to perform a trace
|
4
|
+
# equivalent to CallTracer before method is defined.
|
5
|
+
# scope = CallTracerLazy.new
|
6
|
+
# scope.trace("ActiveRecord::Base#scope") do
|
7
|
+
# require 'active_record/all'
|
8
|
+
# @loader.call
|
9
|
+
# end
|
10
|
+
# scope.captures.each do |capture|
|
11
|
+
# capture.argument[:name]
|
12
|
+
# capture.argument[:body]
|
13
|
+
# capture.argument[:block]
|
14
|
+
# end
|
3
15
|
class Orthoses::CallTracer::Lazy
|
4
16
|
def initialize: () -> void
|
5
17
|
def trace: (String name) ?{ () -> untyped } -> untyped
|
@@ -1,8 +1,11 @@
|
|
1
1
|
# THIS IS GENERATED CODE from `$ rake generate_self_sig`
|
2
2
|
|
3
|
+
# Check and drop duplication method, const etc...
|
3
4
|
class Orthoses::Content::DuplicationChecker
|
4
5
|
def initialize: (untyped decl, ?env: untyped?) -> void
|
5
6
|
def update_decl: () -> (nil | untyped)
|
7
|
+
private def uniq_members: () -> untyped
|
8
|
+
private def drop_set_method_definition: (untyped uniq_map) -> untyped
|
6
9
|
private def drop_known_method_definition: (untyped uniq_map) -> untyped
|
7
10
|
private def member_key: (untyped member) -> untyped
|
8
11
|
end
|
data/sig/orthoses/content.rbs
CHANGED
@@ -12,10 +12,10 @@ class Orthoses::Content
|
|
12
12
|
def uniq!: () -> untyped
|
13
13
|
def sort!: () -> untyped
|
14
14
|
def original_rbs: () -> untyped
|
15
|
+
def auto_header: () -> (nil | untyped)
|
15
16
|
private def decl_to_lines: (untyped decl) -> untyped
|
16
17
|
private def uniqed_body_string: () -> String
|
17
18
|
private def uniqed_body_decl: () -> RBS::AST::Declarations::t
|
18
|
-
private def auto_header: () -> (nil | untyped)
|
19
19
|
private def temporary_type_params: (untyped name) -> untyped
|
20
20
|
private def type_params: (untyped name) -> untyped
|
21
21
|
attr_reader name: String
|
data/sig/orthoses/filter.rbs
CHANGED
@@ -1,5 +1,10 @@
|
|
1
1
|
# THIS IS GENERATED CODE from `$ rake generate_self_sig`
|
2
2
|
|
3
|
+
# Filter current store.
|
4
|
+
# filter stored key and value if proc return true
|
5
|
+
# use Orthoses::Filter do |name, content|
|
6
|
+
# Orthoses.rbs_defined_class?(name)
|
7
|
+
# end
|
3
8
|
class Orthoses::Filter
|
4
9
|
def initialize: (Orthoses::_Call loader) { (String, Orthoses::Content) -> boolish } -> void
|
5
10
|
def call: () -> Orthoses::store
|
@@ -1,5 +1,13 @@
|
|
1
1
|
# THIS IS GENERATED CODE from `$ rake generate_self_sig`
|
2
2
|
|
3
|
+
# TracePoint wrapper that allows setting hooks
|
4
|
+
# even if the target is undefined
|
5
|
+
# LazyTracePoint.new(:call) do |tp|
|
6
|
+
# ...
|
7
|
+
# end.enable(target: 'Class#class_attribute') do
|
8
|
+
# require 'active_support/core_ext/class/attribute'
|
9
|
+
# ...
|
10
|
+
# end
|
3
11
|
class Orthoses::LazyTracePoint < ::TracePoint
|
4
12
|
def method_added: (untyped id) -> untyped
|
5
13
|
def singleton_method_added: (untyped id) -> untyped
|
@@ -1,5 +1,7 @@
|
|
1
1
|
# THIS IS GENERATED CODE from `$ rake generate_self_sig`
|
2
2
|
|
3
|
+
# AvoidRecursiveAncestorError is an internal middleware
|
4
|
+
# It's using on orthoses/outputable.rb
|
3
5
|
class Orthoses::Outputable::AvoidRecursiveAncestorError
|
4
6
|
def initialize: (Orthoses::_Call loader) -> void
|
5
7
|
def call: () -> Orthoses::store
|
data/sig/orthoses/pp.rbs
CHANGED
@@ -1,5 +1,10 @@
|
|
1
1
|
# THIS IS GENERATED CODE from `$ rake generate_self_sig`
|
2
2
|
|
3
|
+
# Call `rbs prototype rb` and add to store
|
4
|
+
# use Orthoses::RBSPrototypeRB,
|
5
|
+
# paths: Dir.glob("lib/**/*.rb"),
|
6
|
+
# method_definition_filter: ->(member) { false },
|
7
|
+
# alias_filter: ->(member) { false }
|
3
8
|
class Orthoses::RBSPrototypeRB
|
4
9
|
def initialize: (Orthoses::_Call loader, paths: Array[_ToS], ?constant_filter: Orthoses::Content::Environment::constant_filter?, ?mixin_filter: Orthoses::Content::Environment::mixin_filter?, ?attribute_filter: Orthoses::Content::Environment::attribute_filter?) -> void
|
5
10
|
def call: () -> Orthoses::store
|
@@ -1,5 +1,8 @@
|
|
1
1
|
# THIS IS GENERATED CODE from `$ rake generate_self_sig`
|
2
2
|
|
3
|
+
# Call `rbs prototype runtime` and add to store
|
4
|
+
# use Orthoses::RBSPrototypeRuntime,
|
5
|
+
# patterns: ['Foo::*']
|
3
6
|
class Orthoses::RBSPrototypeRuntime
|
4
7
|
def initialize: (untyped loader, patterns: untyped) -> void
|
5
8
|
def call: () -> untyped
|
data/sig/orthoses/sort.rbs
CHANGED
data/sig/orthoses/store.rbs
CHANGED
data/sig/orthoses/tap.rbs
CHANGED
data/sig/orthoses.rbs
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: orthoses
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ksss
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-06-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rbs
|
@@ -41,6 +41,15 @@ files:
|
|
41
41
|
- examples/rack-test/Gemfile.lock
|
42
42
|
- examples/rack-test/Rakefile
|
43
43
|
- examples/rack-test/generate.rb
|
44
|
+
- examples/rack-test/out/rack/test.rbs
|
45
|
+
- examples/rack-test/out/rack/test/cookie.rbs
|
46
|
+
- examples/rack-test/out/rack/test/cookie_jar.rbs
|
47
|
+
- examples/rack-test/out/rack/test/fake_app.rbs
|
48
|
+
- examples/rack-test/out/rack/test/input_rewinder.rbs
|
49
|
+
- examples/rack-test/out/rack/test/methods.rbs
|
50
|
+
- examples/rack-test/out/rack/test/session.rbs
|
51
|
+
- examples/rack-test/out/rack/test/uploaded_file.rbs
|
52
|
+
- examples/rack-test/out/rack/test/utils.rbs
|
44
53
|
- examples/simple_middleware.rb
|
45
54
|
- examples/simple_middleware.rbs
|
46
55
|
- lib/orthoses.rb
|
@@ -156,7 +165,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
156
165
|
- !ruby/object:Gem::Version
|
157
166
|
version: '0'
|
158
167
|
requirements: []
|
159
|
-
rubygems_version: 3.4.
|
168
|
+
rubygems_version: 3.4.10
|
160
169
|
signing_key:
|
161
170
|
specification_version: 4
|
162
171
|
summary: Framework for Generate RBS
|