• R
    Allow define scope for Ruby reserved keywords · 8589e8c2
    Ryuta Kamizono 提交于
    For now argument forwarding doesn't allow some keywords like `true` as a
    method name.
    
    To bypass the issue, fallback to `define_method` if method names are
    Ruby reserved keywords.
    
    https://bugs.ruby-lang.org/issues/16854
    
    ```ruby
    class Works
      def true(*args)
        puts(*args)
      end
    end
    
    Works.new.true 1, 2, 3
    # => 1, 2, 3
    
    class WontWork
      def true(...)
        puts(...)
      end
    end
    ```
    
    ```
    % ruby a.rb
    a.rb:12: syntax error, unexpected ..., expecting ')'
      def true(...)
    a.rb:13: unexpected ...
    a.rb:15: syntax error, unexpected `end', expecting end-of-input
    ```
    8589e8c2
named_scoping_test.rb 19.6 KB