Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ruby/ruby2_keywords
Shim library for Module#ruby2_keywords
https://github.com/ruby/ruby2_keywords
ruby
Last synced: 5 days ago
JSON representation
Shim library for Module#ruby2_keywords
- Host: GitHub
- URL: https://github.com/ruby/ruby2_keywords
- Owner: ruby
- License: bsd-2-clause
- Created: 2019-10-16T15:18:13.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-04-19T10:57:27.000Z (9 months ago)
- Last Synced: 2024-10-29T12:57:42.137Z (3 months ago)
- Topics: ruby
- Language: Ruby
- Homepage:
- Size: 40 KB
- Stars: 61
- Watchers: 8
- Forks: 15
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ruby2_keywords
Provides empty `Module#ruby2_keywords` method, for the forward
source-level compatibility against ruby2.7 and ruby3.## Installation
Add this line to your application's Gemfile:
```ruby
gem 'ruby2_keywords'
```And then execute:
$ bundle
Or install it yourself as:
$ gem install ruby2_keywords
## Usage
For class/module instance methods:
```ruby
require 'ruby2_keywords'module YourModule
ruby2_keywords def delegating_method(*args)
other_method(*args)
end
end
```For global methods:
```ruby
require 'ruby2_keywords'ruby2_keywords def oldstyle_keywords(options = {})
end
```You can do the same for a method defined by `Module#define_method`:
```ruby
define_method :delegating_method do |*args, &block|
other_method(*args, &block)
end
ruby2_keywords :delegating_method
```## Contributing
Bug reports and pull requests are welcome on [GitHub] or
[Ruby Issue Tracking System].## Development
After checking out the repo, run `bundle install` to install dependencies.
Then, run `bundle exec rake test` to run the tests.To test on older Ruby versions, you can use docker. E.g. to test on Ruby 2.0,
use `docker-compose run ruby-2.0`.## License
The gem is available as open source under the terms of the
[Ruby License] or the [2-Clause BSD License].[GitHub]: https://github.com/ruby/ruby2_keywords/
[Ruby Issue Tracking System]: https://bugs.ruby-lang.org
[Ruby License]: https://www.ruby-lang.org/en/about/license.txt
[2-Clause BSD License]: https://opensource.org/licenses/BSD-2-Clause