| Age | Commit message (Collapse) | Author |
|
Previously numbered parameters were a field on blocks and lambdas
that indicated the maximum number of numbered parameters in either
the block or lambda, respectively. However they also had a
parameters field that would always be nil in these cases.
This changes it so that we introduce a NumberedParametersNode that
goes in place of parameters, which has a single uint8_t maximum
field on it. That field contains the maximum numbered parameter in
either the block or lambda.
As a part of the PR, I'm introducing a new UInt8Field type that
can be used on nodes, which is just to make it a little more
explicit what the maximum values can be (the maximum is actually 9,
since it only goes up to _9). Plus we can do a couple of nice
things in serialization like just read a single byte.
https://github.com/ruby/prism/commit/2d87303903
|
|
|
|
https://github.com/ruby/prism/commit/4d689fe1df
|
|
(https://github.com/ruby/prism/pull/1787)
https://github.com/ruby/prism/commit/5acc38a2f3
|
|
https://github.com/ruby/prism/commit/3e4b4fb947
|
|
https://github.com/ruby/prism/commit/ea00a1b3c6
|
|
No encodings are guaranteed in C compilers, and other than UTF-8
encodings may be assumed in some platforms, e.g., CP932 on Windows
Japanese edition, and may result in compilation errors.
|
|
https://github.com/ruby/prism/commit/0d0d039f8e
|
|
https://github.com/ruby/prism/commit/84e22c5581
|
|
https://github.com/ruby/prism/commit/3abd09c803
|
|
https://github.com/ruby/prism/commit/6e5556dbdf
|
|
https://github.com/ruby/prism/commit/568fb39e2c
|
|
https://github.com/ruby/prism/commit/b62305ff3e
Co-authored-by: Stan Lo <st0012@users.noreply.github.com>
|
|
https://github.com/ruby/prism/commit/73c44b0b9c
|
|
Moves the common flag bits to the top. This lets us eliminate the `COMMON`
constant, and also allows us to group encoding flags on a nibble so we
can more easily mask them.
https://github.com/ruby/prism/commit/895508659e
|
|
https://github.com/ruby/prism/commit/c82a9dad64
|
|
|
|
|