ar_translate 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3f70d164d2d2358146f3c13f5e6883e38436d126
4
- data.tar.gz: e01dce3b7ce9f1fb2e50952e16dd1f5f97eb5a97
3
+ metadata.gz: 6cdb52b7d481e08fd1c03a0e08b0e43a93de5efe
4
+ data.tar.gz: a1a721d8c81a700451f0723666a1a8408ce98ac0
5
5
  SHA512:
6
- metadata.gz: 82904f7f935d5bc94f3223ea15507251785708c1a3f991ae64b382c0681183b73335c4e01b37ec41f7f7c259915cf960fd3437c336260017499266ada8188d64
7
- data.tar.gz: c83c2c5f7a41ada4f5b7706f4c96b67ae8bbc6136eb43b3cc82e2123150de121a22055ef8fdf34808f8f27721e5d85c0055ec98b7bd5a9a6e281085885412807
6
+ metadata.gz: b2f6b6a5affbd7d4f0fc907574cb47983ad8cf15d22aefddeaad5b266d3e3305fe77ce753d0efed0eb549c963608d43cd8c6ef81739b19567ef9ba84c9709b0c
7
+ data.tar.gz: 3fe0863f25ffa3ae9b577d9e3da51bf762ac32eea0edd2782eb6c3e0bcda1d3bf46ddb87552fe98c8cd0f7d60d52c0d7853006e8e014a9b62f1b529ff49852ce
@@ -51,16 +51,21 @@ module ArTranslate
51
51
  end
52
52
  end
53
53
 
54
+ def generate_column_type_checker(column)
55
+ lambda do
56
+ column_info = self.class.columns_hash[column]
57
+ fail Error, "Invalid column #{column}" if column_info.nil?
58
+ fail Error, "Column type for #{column} is not hstore" unless column_info.type == :hstore
59
+ end
60
+ end
61
+
54
62
  def model_method(name, &block)
55
63
  method_name = "#{prefix}_#{name}"
56
- c_column = column
64
+ check_column_type = generate_column_type_checker(column)
57
65
 
58
66
  model.instance_eval do
59
67
  define_method(method_name) do |*args|
60
- column_info = self.class.columns_hash[c_column]
61
- fail Error, "Invalid column #{c_column}" if column_info.nil?
62
- fail Error, "Column type for #{c_column} is not hstore" unless column_info.type == :hstore
63
-
68
+ instance_exec(&check_column_type)
64
69
  instance_exec(*args, &block)
65
70
  end
66
71
  end
@@ -1,3 +1,3 @@
1
1
  module ArTranslate
2
- VERSION = '0.2.0'
2
+ VERSION = '0.2.1'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ar_translate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Niko Dziemba