activerecord_flag_support 0.0.12 → 0.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8f48cc4e8849853902aa26c7b407d709693a64ac
4
- data.tar.gz: c2a9fa74576f9641f40fbd79dd4e5bf22c5999c5
3
+ metadata.gz: ad4299f55b0076b68a7c2c3068491724af967b0d
4
+ data.tar.gz: bb6025774b7ab0b6f26fc6fcee261f15a7377cfe
5
5
  SHA512:
6
- metadata.gz: 4a753f57ebf99d57dee8d62a6fc9fa90c7f572555a220f6ca40a0f7fe4efcf137c6e3ed02a84531e6709ea30c436036db86b4762e02d042e03f09c13d00692d2
7
- data.tar.gz: 2f7fae1b63c19a7ba0ef859b1786b791614b173c5764eeb2e7ad41ef322ac6ff2a75b98057acaad2e7a81f62e25126172b2e8463bfdb8b1d95dfcfd262119963
6
+ metadata.gz: 5d366ae3adc20b1def7a6a546340ec67908e2eb9ca7c2f9b479c96324c81d9cfb8fd6baed0c03b0d65faf9bb67ac075f38c81ab3c064dbb01a2f6258de26b0a6
7
+ data.tar.gz: 3780480f5889a5f7b2e1c2afbb71bf279147a92c9a89dab42b774183eba74d3e6664b35d5883ee8c162bc0a1c45a6a81bcd15fe3a2724b0331c1f5d965e594f6
@@ -17,7 +17,7 @@ module ActiveRecordFlagSupport
17
17
  method_hash = method_hash_from_array(method_hash)
18
18
  end
19
19
  method_hash.each_pair do |key, value|
20
- define_methods_for_flag(key, value)
20
+ define_methods_for_flag(key, value, field)
21
21
  add_flag_const(key, value)
22
22
  end
23
23
  setup_flag_class(field, method_hash)
@@ -30,13 +30,13 @@ module ActiveRecordFlagSupport
30
30
  ############################################################################
31
31
 
32
32
  # ------------------------------------------------------ define_flag_methods
33
- def define_methods_for_flag(key, value)
33
+ def define_methods_for_flag(key, value, field)
34
34
  class_eval("def #{key}\n return (#{field} & #{value}) == #{value}; end",
35
35
  __FILE__, __LINE__)
36
36
  class_eval("def #{key}=(v)\n old_value = #{key}; set_flag(:#{field}, "\
37
37
  "v, #{value}); if old_value != #{key}\n@#{key}_was_changed="\
38
38
  "true;\nend\n end", __FILE__, __LINE__)
39
- class_eval('attr_reader :{key}_was_changed', __FILE__, __LINE__)
39
+ class_eval("attr_reader :#{key}_was_changed", __FILE__, __LINE__)
40
40
  class_eval("def #{key}_changed?\n new_record? || #{key}_was_changed\n "\
41
41
  'end', __FILE__, __LINE__)
42
42
  class_eval("def #{key}?\n return (#{field} & #{value}) == #{value}; "\
@@ -47,7 +47,7 @@ module ActiveRecordFlagSupport
47
47
  end
48
48
 
49
49
  # --------------------------------------------------------- setup_flag_class
50
- def setup_flag_class
50
+ def setup_flag_class(field, method_hash)
51
51
  cattr_accessor "#{field}_flag_hash"
52
52
  class_variable_set("@@#{field}_flag_hash", method_hash)
53
53
  return if method_defined?(:set_flag)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activerecord_flag_support
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.12
4
+ version: 0.0.16
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Palmblad