add support for hash literal shorthand #1990
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
redmine ticket: https://bugs.ruby-lang.org/issues/15236
inspired by javascript support for object literal shorthand
{ a }
, which will be expanded into{ a: a }
..to avoid ambiguity, this shorthand is only supported when hash is defined explicitly with
{ }
notation..in other situation where the brackets is optional, e.g. function call, we still need to write it in full (
m(a: a)
instead ofm(a)
, orm(a, b, c: c)
instead ofm(a, b, c)
..PS: This is my first time contributing to ruby, and also my first time reading and modifying a parser.. I'm not quite sure if what I did is a good approach.. any help or guidance will be highly appreciated.. 🙇♂️