HashedStruct
Struct with hash as initialization argument, to avoid dependency on positional arguments
Installation
Add this line to your application's Gemfile:
gem 'hashed_struct', '~> 0.0.2'
And then execute:
$ bundle
Or install it yourself as:
$ gem install hashed_struct
Usage
Use it like Struct
, but when initializing the generated class, use a hash of
arguments instead of positional arguments.
Person = HashedStruct.new(:name, :age, :gender)
Person.new(name: 'Joe', age: 30, gender: 'Male')
Contributing
- Fork it ( https://github.com/[my-github-username]/hashed_struct/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
Special thanks
- Hanmac (#ruby on freenode)
- apeiros (#ruby on freenode)