attr_defaults 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/attr_defaults.rb +37 -35
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5265919d9ac3fb4ebb152273f94c18fc69d0b1a8
4
- data.tar.gz: 59e7b6c5e5fbdec4dc42bcb94745976c36d09f46
3
+ metadata.gz: 514144006d1b8d1d33b39711e7da84621c9c26e4
4
+ data.tar.gz: 7dff3dc056cc5825c0c3a69d85f16b53f2f66a84
5
5
  SHA512:
6
- metadata.gz: ca41f8b73c2408b948aadadf23265766ce2aefbedaf7ff0a133a565f9fef824457c239b003e2bd0777c96a7c964bdf9ac5e21fec485c138432b61dccfd29bfa2
7
- data.tar.gz: 305694e292c11f5ebd5261c4ea2494d4ff3badf03a07af5cf04924fe8ca209bae0ba18ea6009ec56f7fe1052fc4942928a6f2219c53665664da273055e052e53
6
+ metadata.gz: 32ecbabe9326c1177faa4824f8ee10b19d30decf1681597a1f1b521f2d9d20dc3d8b03157568ad8dddc2e24225a504b06a26a5e5debdc8d034825725c71fa417
7
+ data.tar.gz: d97c9c3fb178d59a500710a327e62129e16c453372f2f1edf39a4e0f483f9a0e12e9fdc20847d1a3134033396d87a86bc6f6fab109107ff1f9492ec7dc756614
data/lib/attr_defaults.rb CHANGED
@@ -1,39 +1,41 @@
1
1
  module AttrDefaults
2
- module Initialize
3
- def initialize *args, &block
4
- defaults = class << self.class
5
- @attr_defaults
6
- end
7
-
8
- unless defaults.nil?
9
- defaults.each do |attrs,default|
10
- attrs.each do |attr|
11
- instance_variable_set :"@#{attr}", default.call
12
- end
13
- end
14
- end
15
- end
16
- end
2
+ module Initialize
3
+ def initialize *args, &block
4
+ defaults = class << self.class
5
+ @attr_defaults
6
+ end
7
+
8
+ unless defaults.nil?
9
+ defaults.each do |attrs,default|
10
+ attrs.each do |attr|
11
+ instance_variable_set :"@#{attr}", default.call
12
+ end
13
+ end
14
+ end
15
+
16
+ super *args, &block
17
+ end
18
+ end
17
19
 
18
- module_function
20
+ module_function
19
21
 
20
- def included klass
21
- klass.prepend Initialize
22
-
23
- class << klass
24
- [:attr, :attr_writer, :attr_reader, :attr_accessor].each do |method|
25
- define_method method do |*attrs, &block|
26
- super *attrs
27
-
28
- unless block.nil?
29
- defaults = class << self
30
- @attr_defaults ||= {}
31
- end
32
-
33
- defaults[attrs] = block
34
- end
35
- end
36
- end
37
- end
38
- end
22
+ def included klass
23
+ klass.prepend Initialize
24
+
25
+ class << klass
26
+ [:attr, :attr_writer, :attr_reader, :attr_accessor].each do |method|
27
+ define_method method do |*attrs, &block|
28
+ super *attrs
29
+
30
+ unless block.nil?
31
+ defaults = class << self
32
+ @attr_defaults ||= {}
33
+ end
34
+
35
+ defaults[attrs] = block
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
39
41
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: attr_defaults
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kyle King