Skip to content

Creates methods that accepts array of values and save them as bit mask to the attribute with an "_mask" suffix using specified source.

License

Notifications You must be signed in to change notification settings

leschenko/array_bit_mask

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ArrayBitMask

Dependency Status

Creates methods that accepts array of values and save them as bit mask to the attribute with an "_mask" suffix using specified source.

Installation

Add this line to your application's Gemfile:

gem 'array_bit_mask'

And then execute:

$ bundle

Or install it yourself as:

$ gem install array_bit_mask

Usage

Call as_bit_mask in an ActiveRecord class and pass the name of the attribute you wish to be the accessor for array of values. In the option :source you can specify array of values or method name which return an array. Bit mask would be saved to attribute with an "_mask" suffix, but you can also specify it in :column option

class Permission < ActiveRecord::Base
  as_bit_mask :actions, :source => [:create, :show, :update]
end

permission = Permission.new
permission.actions = [:show, :update]
permission.actions_mask
=> 6

Contributing

  1. Fork it
  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 new Pull Request

About

Creates methods that accepts array of values and save them as bit mask to the attribute with an "_mask" suffix using specified source.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages