m2m_keygen 0.4.9 → 0.5.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/.overcommit.yml +4 -7
- data/.rubocop.yml +19 -16
- data/.ruby-version +1 -1
- data/.streerc +1 -0
- data/.tool-versions +1 -1
- data/CHANGELOG.md +60 -1
- data/Gemfile +2 -2
- data/Gemfile.lock +135 -158
- data/README.md +64 -78
- data/docs/MIGRATING.md +69 -0
- data/docs/SPEC.md +245 -0
- data/examples/nonce_store/postgres.rb +40 -0
- data/examples/nonce_store/redis.rb +23 -0
- data/gemfiles/rack_2.gemfile +5 -0
- data/gemfiles/rack_3.gemfile +5 -0
- data/lib/m2m_keygen/canonicalizer.rb +57 -0
- data/lib/m2m_keygen/nonce_store/disabled.rb +19 -0
- data/lib/m2m_keygen/nonce_store/memory.rb +64 -0
- data/lib/m2m_keygen/nonce_store.rb +18 -0
- data/lib/m2m_keygen/rack_validator.rb +72 -19
- data/lib/m2m_keygen/request_signer/signed_request.rb +10 -0
- data/lib/m2m_keygen/request_signer.rb +118 -0
- data/lib/m2m_keygen/signature.rb +41 -39
- data/lib/m2m_keygen/types/params_type.rb +6 -17
- data/lib/m2m_keygen/version.rb +1 -1
- data/lib/m2m_keygen.rb +6 -0
- data/m2m_keygen.gemspec +12 -14
- data/sorbet/config +1 -0
- data/sorbet/rbi/gems/.gitattributes +1 -0
- data/sorbet/rbi/gems/{ast@2.4.2.rbi → ast@2.4.3.rbi} +45 -79
- data/sorbet/rbi/gems/{benchmark@0.2.0.rbi → benchmark@0.5.0.rbi} +91 -58
- data/sorbet/rbi/gems/bundler-audit@0.9.3.rbi +397 -0
- data/sorbet/rbi/gems/byebug@13.0.0.rbi +3651 -0
- data/sorbet/rbi/gems/childprocess@5.1.0.rbi +336 -0
- data/sorbet/rbi/gems/concurrent-ruby@1.3.7.rbi +384 -0
- data/sorbet/rbi/gems/{diff-lcs@1.5.0.rbi → diff-lcs@1.6.2.rbi} +189 -199
- data/sorbet/rbi/gems/{docile@1.4.0.rbi → docile@1.4.1.rbi} +147 -147
- data/sorbet/rbi/gems/dotenv@3.2.0.rbi +267 -0
- data/sorbet/rbi/gems/erubi@1.13.1.rbi +155 -0
- data/sorbet/rbi/gems/{faker@2.22.0.rbi → faker@3.8.0.rbi} +8468 -3829
- data/sorbet/rbi/gems/{ffi@1.15.5.rbi → ffi@1.17.4.rbi} +1 -0
- data/sorbet/rbi/gems/{formatador@1.1.0.rbi → formatador@1.2.3.rbi} +1 -0
- data/sorbet/rbi/gems/{guard@2.18.0.rbi → guard@2.20.1.rbi} +1 -0
- data/sorbet/rbi/gems/{i18n@1.12.0.rbi → i18n@1.15.2.rbi} +687 -827
- data/sorbet/rbi/gems/io-console@0.8.2.rbi +9 -0
- data/sorbet/rbi/gems/{json@2.6.2.rbi → json@2.20.0.rbi} +994 -252
- data/sorbet/rbi/gems/language_server-protocol@3.17.0.5.rbi +9 -0
- data/sorbet/rbi/gems/lint_roller@1.1.0.rbi +189 -0
- data/sorbet/rbi/gems/listen@3.10.0.rbi +9 -0
- data/sorbet/rbi/gems/logger@1.7.0.rbi +896 -0
- data/sorbet/rbi/gems/{lumberjack@1.2.8.rbi → lumberjack@1.4.2.rbi} +1 -0
- data/sorbet/rbi/gems/{method_source@1.0.0.rbi → method_source@1.1.0.rbi} +111 -90
- data/sorbet/rbi/gems/{overcommit@0.59.1.rbi → overcommit@0.71.0.rbi} +503 -647
- data/sorbet/rbi/gems/parallel@2.1.0.rbi +321 -0
- data/sorbet/rbi/gems/parser@3.3.11.1.rbi +5229 -0
- data/sorbet/rbi/gems/prettier_print@1.2.1.rbi +878 -0
- data/sorbet/rbi/gems/prism@1.9.0.rbi +42224 -0
- data/sorbet/rbi/gems/pry-byebug@3.12.0.rbi +481 -0
- data/sorbet/rbi/gems/{pry@0.14.1.rbi → pry@0.16.0.rbi} +2567 -3550
- data/sorbet/rbi/gems/{racc@1.6.0.rbi → racc@1.8.1.rbi} +54 -40
- data/sorbet/rbi/gems/rack@3.2.6.rbi +4653 -0
- data/sorbet/rbi/gems/{rake@13.0.6.rbi → rake@13.4.2.rbi} +963 -732
- data/sorbet/rbi/gems/{rb-inotify@0.10.1.rbi → rb-inotify@0.11.1.rbi} +1 -0
- data/sorbet/rbi/gems/rbi@0.3.14.rbi +5519 -0
- data/sorbet/rbi/gems/rbs@4.0.3.rbi +6908 -0
- data/sorbet/rbi/gems/regexp_parser@2.12.0.rbi +3398 -0
- data/sorbet/rbi/gems/reline@0.6.3.rbi +2446 -0
- data/sorbet/rbi/gems/require-hooks@0.4.0.rbi +152 -0
- data/sorbet/rbi/gems/{rexml@3.2.5.rbi → rexml@3.4.4.rbi} +1085 -894
- data/sorbet/rbi/gems/rspec-core@3.13.6.rbi +9475 -0
- data/sorbet/rbi/gems/rspec-expectations@3.13.5.rbi +6108 -0
- data/sorbet/rbi/gems/rspec-mocks@3.13.8.rbi +4787 -0
- data/sorbet/rbi/gems/rspec-support@3.13.7.rbi +1274 -0
- data/sorbet/rbi/gems/rspec@3.13.2.rbi +15 -0
- data/sorbet/rbi/gems/rspec_in_context@1.2.2.rbi +294 -0
- data/sorbet/rbi/gems/rubocop-ast@1.49.1.rbi +7140 -0
- data/sorbet/rbi/gems/rubocop-faker@1.3.0.rbi +88 -0
- data/sorbet/rbi/gems/rubocop-performance@1.26.1.rbi +3403 -0
- data/sorbet/rbi/gems/rubocop-sorbet@0.12.0.rbi +2448 -0
- data/sorbet/rbi/gems/rubocop@1.88.1.rbi +63103 -0
- data/sorbet/rbi/gems/ruby-lsp@0.26.9.rbi +28 -0
- data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +988 -0
- data/sorbet/rbi/gems/rubydex@0.2.7.rbi +836 -0
- data/sorbet/rbi/gems/simplecov-html@0.13.2.rbi +90 -0
- data/sorbet/rbi/gems/{simplecov@0.21.2.rbi → simplecov@0.22.0.rbi} +438 -578
- data/sorbet/rbi/gems/spoom@1.8.2.rbi +6691 -0
- data/sorbet/rbi/gems/syntax_tree@6.3.0.rbi +22090 -0
- data/sorbet/rbi/gems/tapioca@0.19.2.rbi +3597 -0
- data/sorbet/rbi/gems/{thor@1.2.1.rbi → thor@1.5.0.rbi} +1085 -1171
- data/sorbet/rbi/gems/tsort@0.2.0.rbi +389 -0
- data/sorbet/rbi/gems/unicode-display_width@3.2.0.rbi +130 -0
- data/sorbet/rbi/gems/unicode-emoji@4.2.0.rbi +332 -0
- data/sorbet/rbi/gems/{yard-sorbet@0.7.0.rbi → yard-sorbet@0.9.0.rbi} +142 -99
- data/sorbet/rbi/gems/{yard@0.9.28.rbi → yard@0.9.44.rbi} +5350 -6316
- data/sorbet/rbi/gems/zeitwerk@2.8.2.rbi +1178 -0
- metadata +105 -111
- data/.prettierrc.js +0 -4
- data/docs/M2mKeygen/Error.html +0 -135
- data/docs/M2mKeygen/ParamsEncoder.html +0 -321
- data/docs/M2mKeygen/RackValidator.html +0 -533
- data/docs/M2mKeygen/Signature.html +0 -680
- data/docs/M2mKeygen/Types.html +0 -147
- data/docs/M2mKeygen.html +0 -157
- data/docs/_index.html +0 -182
- data/docs/class_list.html +0 -51
- data/docs/css/common.css +0 -1
- data/docs/css/full_list.css +0 -58
- data/docs/css/style.css +0 -497
- data/docs/file.README.html +0 -230
- data/docs/file_list.html +0 -56
- data/docs/frames.html +0 -17
- data/docs/index.html +0 -230
- data/docs/js/app.js +0 -314
- data/docs/js/full_list.js +0 -216
- data/docs/js/jquery.js +0 -4
- data/docs/method_list.html +0 -139
- data/docs/top-level-namespace.html +0 -110
- data/lib/m2m_keygen/params_encoder.rb +0 -56
- data/package.json +0 -12
- data/sig/m2m_keygen.rbs +0 -4
- data/sorbet/rbi/gems/activesupport@7.0.3.1.rbi +0 -18608
- data/sorbet/rbi/gems/backport@1.2.0.rbi +0 -522
- data/sorbet/rbi/gems/bundler-audit@0.9.1.rbi +0 -308
- data/sorbet/rbi/gems/byebug@11.1.3.rbi +0 -3603
- data/sorbet/rbi/gems/childprocess@4.1.0.rbi +0 -401
- data/sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi +0 -11581
- data/sorbet/rbi/gems/dotenv@2.8.1.rbi +0 -234
- data/sorbet/rbi/gems/e2mmap@0.1.0.rbi +0 -8
- data/sorbet/rbi/gems/haml@5.2.2.rbi +0 -3190
- data/sorbet/rbi/gems/jaro_winkler@1.5.4.rbi +0 -19
- data/sorbet/rbi/gems/kramdown-parser-gfm@1.1.0.rbi +0 -133
- data/sorbet/rbi/gems/kramdown@2.4.0.rbi +0 -3261
- data/sorbet/rbi/gems/listen@3.7.1.rbi +0 -1181
- data/sorbet/rbi/gems/minitest@5.16.3.rbi +0 -1459
- data/sorbet/rbi/gems/nokogiri@1.13.8.rbi +0 -6514
- data/sorbet/rbi/gems/parallel@1.22.1.rbi +0 -277
- data/sorbet/rbi/gems/parser@3.1.2.1.rbi +0 -6826
- data/sorbet/rbi/gems/prettier@3.2.0.rbi +0 -22
- data/sorbet/rbi/gems/prettier_print@0.1.0.rbi +0 -8
- data/sorbet/rbi/gems/pry-byebug@3.10.1.rbi +0 -1222
- data/sorbet/rbi/gems/rack@2.2.4.rbi +0 -5630
- data/sorbet/rbi/gems/rbi@0.0.15.rbi +0 -3007
- data/sorbet/rbi/gems/rbs@2.6.0.rbi +0 -8
- data/sorbet/rbi/gems/regexp_parser@2.5.0.rbi +0 -3366
- data/sorbet/rbi/gems/reverse_markdown@2.1.1.rbi +0 -389
- data/sorbet/rbi/gems/rspec-core@3.11.0.rbi +0 -10786
- data/sorbet/rbi/gems/rspec-expectations@3.11.0.rbi +0 -8170
- data/sorbet/rbi/gems/rspec-mocks@3.11.1.rbi +0 -5385
- data/sorbet/rbi/gems/rspec-support@3.11.0.rbi +0 -1746
- data/sorbet/rbi/gems/rspec@3.11.0.rbi +0 -187
- data/sorbet/rbi/gems/rspec_in_context@1.1.0.3.rbi +0 -1113
- data/sorbet/rbi/gems/rubocop-ast@1.21.0.rbi +0 -7044
- data/sorbet/rbi/gems/rubocop-faker@1.1.0.rbi +0 -106
- data/sorbet/rbi/gems/rubocop-performance@1.14.3.rbi +0 -2982
- data/sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi +0 -990
- data/sorbet/rbi/gems/rubocop@1.35.1.rbi +0 -52002
- data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +0 -1239
- data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +0 -219
- data/sorbet/rbi/gems/solargraph@0.46.0.rbi +0 -9075
- data/sorbet/rbi/gems/spoom@1.1.12.rbi +0 -2369
- data/sorbet/rbi/gems/syntax_tree-haml@1.3.1.rbi +0 -8
- data/sorbet/rbi/gems/syntax_tree-rbs@0.5.0.rbi +0 -8
- data/sorbet/rbi/gems/syntax_tree@3.5.0.rbi +0 -8
- data/sorbet/rbi/gems/tapioca@0.9.4.rbi +0 -2946
- data/sorbet/rbi/gems/temple@0.8.2.rbi +0 -1712
- data/sorbet/rbi/gems/tilt@2.0.11.rbi +0 -742
- data/sorbet/rbi/gems/tzinfo@2.0.5.rbi +0 -5914
- data/sorbet/rbi/gems/unicode-display_width@2.2.0.rbi +0 -48
- data/sorbet/rbi/gems/unparser@0.6.5.rbi +0 -4529
- data/sorbet/rbi/gems/webrick@1.7.0.rbi +0 -2553
- data/sorbet/rbi/gems/zeitwerk@2.6.0.rbi +0 -867
- data/sorbet/rbi/manual.rbi +0 -7
- data/yarn.lock +0 -20
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
# This is an autogenerated file for types exported from the `ast` gem.
|
|
5
5
|
# Please instead update this file by running `bin/tapioca gem ast`.
|
|
6
6
|
|
|
7
|
+
|
|
7
8
|
# {AST} is a library for manipulating abstract syntax trees.
|
|
8
9
|
#
|
|
9
10
|
# It embraces immutability; each AST node is inherently frozen at
|
|
@@ -16,7 +17,7 @@
|
|
|
16
17
|
# See also {AST::Node}, {AST::Processor::Mixin} and {AST::Sexp} for
|
|
17
18
|
# additional recommendations and design patterns.
|
|
18
19
|
#
|
|
19
|
-
#
|
|
20
|
+
# pkg:gem/ast#lib/ast.rb:13
|
|
20
21
|
module AST; end
|
|
21
22
|
|
|
22
23
|
# Node is an immutable class, instances of which represent abstract
|
|
@@ -55,7 +56,7 @@ module AST; end
|
|
|
55
56
|
# temporary node type requires making globally visible changes to
|
|
56
57
|
# the codebase.
|
|
57
58
|
#
|
|
58
|
-
#
|
|
59
|
+
# pkg:gem/ast#lib/ast/node.rb:40
|
|
59
60
|
class AST::Node
|
|
60
61
|
# Constructs a new instance of Node.
|
|
61
62
|
#
|
|
@@ -67,23 +68,13 @@ class AST::Node
|
|
|
67
68
|
#
|
|
68
69
|
# The `properties` hash is passed to {#assign_properties}.
|
|
69
70
|
#
|
|
70
|
-
#
|
|
71
|
-
#
|
|
72
|
-
# source://ast-2.4.2/lib/ast/node.rb:72
|
|
71
|
+
# pkg:gem/ast#lib/ast/node.rb:72
|
|
73
72
|
def initialize(type, children = T.unsafe(nil), properties = T.unsafe(nil)); end
|
|
74
73
|
|
|
75
|
-
#
|
|
76
|
-
#
|
|
77
|
-
# @return [AST::Node]
|
|
78
|
-
#
|
|
79
|
-
# source://ast-2.4.2/lib/ast/node.rb:168
|
|
74
|
+
# pkg:gem/ast#lib/ast/node.rb:172
|
|
80
75
|
def +(array); end
|
|
81
76
|
|
|
82
|
-
#
|
|
83
|
-
#
|
|
84
|
-
# @return [AST::Node]
|
|
85
|
-
#
|
|
86
|
-
# source://ast-2.4.2/lib/ast/node.rb:177
|
|
77
|
+
# pkg:gem/ast#lib/ast/node.rb:181
|
|
87
78
|
def <<(element); end
|
|
88
79
|
|
|
89
80
|
# Compares `self` to `other`, possibly converting with `to_ast`. Only
|
|
@@ -91,14 +82,14 @@ class AST::Node
|
|
|
91
82
|
#
|
|
92
83
|
# @return [Boolean]
|
|
93
84
|
#
|
|
94
|
-
#
|
|
85
|
+
# pkg:gem/ast#lib/ast/node.rb:153
|
|
95
86
|
def ==(other); end
|
|
96
87
|
|
|
97
88
|
# Appends `element` to `children` and returns the resulting node.
|
|
98
89
|
#
|
|
99
90
|
# @return [AST::Node]
|
|
100
91
|
#
|
|
101
|
-
#
|
|
92
|
+
# pkg:gem/ast#lib/ast/node.rb:177
|
|
102
93
|
def append(element); end
|
|
103
94
|
|
|
104
95
|
# Returns the children of this node.
|
|
@@ -113,23 +104,17 @@ class AST::Node
|
|
|
113
104
|
#
|
|
114
105
|
# @return [Array]
|
|
115
106
|
#
|
|
116
|
-
#
|
|
107
|
+
# pkg:gem/ast#lib/ast/node.rb:56
|
|
117
108
|
def children; end
|
|
118
109
|
|
|
119
|
-
#
|
|
120
|
-
# current node as opposed to initializing from scratch and freezing
|
|
121
|
-
# another one.
|
|
122
|
-
#
|
|
123
|
-
# @return self
|
|
124
|
-
#
|
|
125
|
-
# source://ast-2.4.2/lib/ast/node.rb:115
|
|
110
|
+
# pkg:gem/ast#lib/ast/node.rb:118
|
|
126
111
|
def clone; end
|
|
127
112
|
|
|
128
113
|
# Concatenates `array` with `children` and returns the resulting node.
|
|
129
114
|
#
|
|
130
115
|
# @return [AST::Node]
|
|
131
116
|
#
|
|
132
|
-
#
|
|
117
|
+
# pkg:gem/ast#lib/ast/node.rb:168
|
|
133
118
|
def concat(array); end
|
|
134
119
|
|
|
135
120
|
# Enables matching for Node, where type is the first element
|
|
@@ -137,7 +122,7 @@ class AST::Node
|
|
|
137
122
|
#
|
|
138
123
|
# @return [Array]
|
|
139
124
|
#
|
|
140
|
-
#
|
|
125
|
+
# pkg:gem/ast#lib/ast/node.rb:253
|
|
141
126
|
def deconstruct; end
|
|
142
127
|
|
|
143
128
|
# Nodes are already frozen, so there is no harm in returning the
|
|
@@ -146,67 +131,48 @@ class AST::Node
|
|
|
146
131
|
#
|
|
147
132
|
# @return self
|
|
148
133
|
#
|
|
149
|
-
#
|
|
134
|
+
# pkg:gem/ast#lib/ast/node.rb:115
|
|
150
135
|
def dup; end
|
|
151
136
|
|
|
152
137
|
# Test if other object is equal to
|
|
153
|
-
#
|
|
154
|
-
# @param other [Object]
|
|
138
|
+
# @param [Object] other
|
|
155
139
|
# @return [Boolean]
|
|
156
140
|
#
|
|
157
|
-
#
|
|
141
|
+
# pkg:gem/ast#lib/ast/node.rb:85
|
|
158
142
|
def eql?(other); end
|
|
159
143
|
|
|
160
144
|
# Returns the precomputed hash value for this node
|
|
145
|
+
# @return [Integer]
|
|
161
146
|
#
|
|
162
|
-
#
|
|
163
|
-
#
|
|
164
|
-
# source://ast-2.4.2/lib/ast/node.rb:61
|
|
147
|
+
# pkg:gem/ast#lib/ast/node.rb:61
|
|
165
148
|
def hash; end
|
|
166
149
|
|
|
167
150
|
# Converts `self` to a s-expression ruby string.
|
|
168
151
|
# The code return will recreate the node, using the sexp module s()
|
|
169
152
|
#
|
|
170
|
-
# @param
|
|
153
|
+
# @param [Integer] indent Base indentation level.
|
|
171
154
|
# @return [String]
|
|
172
155
|
#
|
|
173
|
-
#
|
|
156
|
+
# pkg:gem/ast#lib/ast/node.rb:211
|
|
174
157
|
def inspect(indent = T.unsafe(nil)); end
|
|
175
158
|
|
|
176
|
-
#
|
|
177
|
-
# The returned value is frozen.
|
|
178
|
-
# The to_a alias is useful for decomposing nodes concisely.
|
|
179
|
-
# For example:
|
|
180
|
-
#
|
|
181
|
-
# node = s(:gasgn, :$foo, s(:integer, 1))
|
|
182
|
-
# var_name, value = *node
|
|
183
|
-
# p var_name # => :$foo
|
|
184
|
-
# p value # => (integer 1)
|
|
185
|
-
#
|
|
186
|
-
# @return [Array]
|
|
187
|
-
#
|
|
188
|
-
# source://ast-2.4.2/lib/ast/node.rb:56
|
|
159
|
+
# pkg:gem/ast#lib/ast/node.rb:57
|
|
189
160
|
def to_a; end
|
|
190
161
|
|
|
191
162
|
# @return [AST::Node] self
|
|
192
163
|
#
|
|
193
|
-
#
|
|
164
|
+
# pkg:gem/ast#lib/ast/node.rb:229
|
|
194
165
|
def to_ast; end
|
|
195
166
|
|
|
196
|
-
#
|
|
197
|
-
#
|
|
198
|
-
# @param indent [Integer] Base indentation level.
|
|
199
|
-
# @return [String]
|
|
200
|
-
#
|
|
201
|
-
# source://ast-2.4.2/lib/ast/node.rb:187
|
|
167
|
+
# pkg:gem/ast#lib/ast/node.rb:204
|
|
202
168
|
def to_s(indent = T.unsafe(nil)); end
|
|
203
169
|
|
|
204
170
|
# Converts `self` to a pretty-printed s-expression.
|
|
205
171
|
#
|
|
206
|
-
# @param
|
|
172
|
+
# @param [Integer] indent Base indentation level.
|
|
207
173
|
# @return [String]
|
|
208
174
|
#
|
|
209
|
-
#
|
|
175
|
+
# pkg:gem/ast#lib/ast/node.rb:187
|
|
210
176
|
def to_sexp(indent = T.unsafe(nil)); end
|
|
211
177
|
|
|
212
178
|
# Converts `self` to an Array where the first element is the type as a Symbol,
|
|
@@ -214,14 +180,13 @@ class AST::Node
|
|
|
214
180
|
#
|
|
215
181
|
# @return [Array<Symbol, [...Array]>]
|
|
216
182
|
#
|
|
217
|
-
#
|
|
183
|
+
# pkg:gem/ast#lib/ast/node.rb:237
|
|
218
184
|
def to_sexp_array; end
|
|
219
185
|
|
|
220
186
|
# Returns the type of this node.
|
|
221
|
-
#
|
|
222
187
|
# @return [Symbol]
|
|
223
188
|
#
|
|
224
|
-
#
|
|
189
|
+
# pkg:gem/ast#lib/ast/node.rb:43
|
|
225
190
|
def type; end
|
|
226
191
|
|
|
227
192
|
# Returns a new instance of Node where non-nil arguments replace the
|
|
@@ -233,12 +198,12 @@ class AST::Node
|
|
|
233
198
|
#
|
|
234
199
|
# If the resulting node would be identical to `self`, does nothing.
|
|
235
200
|
#
|
|
236
|
-
# @param
|
|
237
|
-
# @param
|
|
238
|
-
# @param
|
|
201
|
+
# @param [Symbol, nil] type
|
|
202
|
+
# @param [Array, nil] children
|
|
203
|
+
# @param [Hash, nil] properties
|
|
239
204
|
# @return [AST::Node]
|
|
240
205
|
#
|
|
241
|
-
#
|
|
206
|
+
# pkg:gem/ast#lib/ast/node.rb:133
|
|
242
207
|
def updated(type = T.unsafe(nil), children = T.unsafe(nil), properties = T.unsafe(nil)); end
|
|
243
208
|
|
|
244
209
|
protected
|
|
@@ -251,7 +216,7 @@ class AST::Node
|
|
|
251
216
|
#
|
|
252
217
|
# @return [nil]
|
|
253
218
|
#
|
|
254
|
-
#
|
|
219
|
+
# pkg:gem/ast#lib/ast/node.rb:98
|
|
255
220
|
def assign_properties(properties); end
|
|
256
221
|
|
|
257
222
|
# Returns `@type` with all underscores replaced by dashes. This allows
|
|
@@ -260,11 +225,12 @@ class AST::Node
|
|
|
260
225
|
#
|
|
261
226
|
# @return [String]
|
|
262
227
|
#
|
|
263
|
-
#
|
|
228
|
+
# pkg:gem/ast#lib/ast/node.rb:264
|
|
264
229
|
def fancy_type; end
|
|
265
230
|
|
|
266
231
|
private
|
|
267
232
|
|
|
233
|
+
# pkg:gem/ast#lib/ast/node.rb:107
|
|
268
234
|
def original_dup; end
|
|
269
235
|
end
|
|
270
236
|
|
|
@@ -275,7 +241,7 @@ end
|
|
|
275
241
|
#
|
|
276
242
|
# @deprecated Use {AST::Processor::Mixin} instead.
|
|
277
243
|
#
|
|
278
|
-
#
|
|
244
|
+
# pkg:gem/ast#lib/ast/processor.rb:8
|
|
279
245
|
class AST::Processor
|
|
280
246
|
include ::AST::Processor::Mixin
|
|
281
247
|
end
|
|
@@ -518,14 +484,14 @@ end
|
|
|
518
484
|
# use some partial evaluation before! The possibilites are
|
|
519
485
|
# endless. Have fun.
|
|
520
486
|
#
|
|
521
|
-
#
|
|
487
|
+
# pkg:gem/ast#lib/ast/processor/mixin.rb:240
|
|
522
488
|
module AST::Processor::Mixin
|
|
523
489
|
# Default handler. Does nothing.
|
|
524
490
|
#
|
|
525
|
-
# @param
|
|
491
|
+
# @param [AST::Node] node
|
|
526
492
|
# @return [AST::Node, nil]
|
|
527
493
|
#
|
|
528
|
-
#
|
|
494
|
+
# pkg:gem/ast#lib/ast/processor/mixin.rb:284
|
|
529
495
|
def handler_missing(node); end
|
|
530
496
|
|
|
531
497
|
# Dispatches `node`. If a node has type `:foo`, then a handler
|
|
@@ -536,19 +502,19 @@ module AST::Processor::Mixin
|
|
|
536
502
|
# If the handler returns `nil`, `node` is returned; otherwise,
|
|
537
503
|
# the return value of the handler is passed along.
|
|
538
504
|
#
|
|
539
|
-
# @param
|
|
505
|
+
# @param [AST::Node, nil] node
|
|
540
506
|
# @return [AST::Node, nil]
|
|
541
507
|
#
|
|
542
|
-
#
|
|
508
|
+
# pkg:gem/ast#lib/ast/processor/mixin.rb:251
|
|
543
509
|
def process(node); end
|
|
544
510
|
|
|
545
511
|
# {#process}es each node from `nodes` and returns an array of
|
|
546
512
|
# results.
|
|
547
513
|
#
|
|
548
|
-
# @param
|
|
514
|
+
# @param [Array<AST::Node>] nodes
|
|
549
515
|
# @return [Array<AST::Node>]
|
|
550
516
|
#
|
|
551
|
-
#
|
|
517
|
+
# pkg:gem/ast#lib/ast/processor/mixin.rb:274
|
|
552
518
|
def process_all(nodes); end
|
|
553
519
|
end
|
|
554
520
|
|
|
@@ -556,8 +522,8 @@ end
|
|
|
556
522
|
# to define deeply nested ASTs from Ruby code, for example, in
|
|
557
523
|
# tests. It should be used like this:
|
|
558
524
|
#
|
|
559
|
-
# describe YourLanguage
|
|
560
|
-
# include Sexp
|
|
525
|
+
# describe YourLanguage do
|
|
526
|
+
# include ::AST::Sexp
|
|
561
527
|
#
|
|
562
528
|
# it "should correctly parse expressions" do
|
|
563
529
|
# YourLanguage.parse("1 + 2 * 3").should ==
|
|
@@ -571,7 +537,7 @@ end
|
|
|
571
537
|
#
|
|
572
538
|
# This way the amount of boilerplate code is greatly reduced.
|
|
573
539
|
#
|
|
574
|
-
#
|
|
540
|
+
# pkg:gem/ast#lib/ast/sexp.rb:20
|
|
575
541
|
module AST::Sexp
|
|
576
542
|
# Creates a {Node} with type `type` and children `children`.
|
|
577
543
|
# Note that the resulting node is of the type AST::Node and not a
|
|
@@ -579,6 +545,6 @@ module AST::Sexp
|
|
|
579
545
|
# This would not pose a problem with comparisons, as {Node#==}
|
|
580
546
|
# ignores metadata.
|
|
581
547
|
#
|
|
582
|
-
#
|
|
548
|
+
# pkg:gem/ast#lib/ast/sexp.rb:26
|
|
583
549
|
def s(type, *children); end
|
|
584
550
|
end
|