Discard changes that have not been committed and revert the last commit
Cannot revert the first commit
Fetch the start code units offset of the value, for the encoding that was configured on the repository.
Fetch the start code units column of the value, for the encoding that was configured on the repository.
foo => [bar] ^^^^^
def foo(&bar); end ^^^^
A block’s parameters.
Foo, = bar ^^^
Foo::Bar ^^^^^^^^
def foo(…); bar(…); end ^^^
-> { 1 + 2 } ^^^^^^^^^^^^^^
Visit a destructured positional parameter node.
foo => ^(bar) ^^^^^^
def foo(bar); end ^^^
A shareable constant.
Ripper
gives back the escaped string content but strips out the common leading whitespace. Prism
gives back the unescaped string content and a location for the escaped string content. Unfortunately these don’t work well together, so here we need to re-derive the common leading whitespace.
@@foo &&= bar
becomes
@@foo && @@foo = bar
@@foo ||= bar
becomes
defined?(@@foo) ? @@foo : @@foo = bar
@@foo += bar
becomes
@@foo = @@foo + bar