/hashed_struct

Struct with hash as initialization argument, to avoid dependency on positional arguments

Primary LanguageRubyMIT LicenseMIT

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

  1. Fork it ( https://github.com/[my-github-username]/hashed_struct/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Special thanks

  • Hanmac (#ruby on freenode)
  • apeiros (#ruby on freenode)