enum_ext 0.1.6 → 0.1.7

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: 498c9ea4cd953c9d1ec4248bd1ca79dd8900a69e
4
- data.tar.gz: 126cefcb0924422ddb47f362a3846987e4c5ac71
3
+ metadata.gz: c2698961df00cbeb91ffc8b2d0c8ac7d6c147f6c
4
+ data.tar.gz: 0f67cd029913da0d0452fb0df015e751a1126e99
5
5
  SHA512:
6
- metadata.gz: 418057bbc8521469d070187b9cc44668976ff0b6180104ea5a339e194e1fb99528c495ff61e7141e59725267cdbdbf2be0b6d96838ad2553eb8cd4a6df881c7b
7
- data.tar.gz: fafaeab39aa49ddccdc776dd4fe2d8313ba86fa61828223f7139747a7fc008b1eab14210fb835efebb63f8c371f9fc465bb91e0e13ad1f5d9742ebefa083a7cb
6
+ metadata.gz: dba5106207aa11393b11f3e5fb8b43112ec27f352bdba2b160c49de07791c7db9e90a9a7bb1566f0cda1e4098411a305d2c43ae78fdda4ebdbb222d3212743b6
7
+ data.tar.gz: 0ecb1d2e41f86641557cc24deb43b31f380219b1e435a173470034010dc8ba2095c24b068bc171d79e6ea9654f9942180a3c5f2293c85638cef5b59a232a249c
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- enum_ext (0.1.5)
4
+ enum_ext (0.1.6)
5
5
  activerecord (>= 4.1)
6
6
 
7
7
  GEM
data/README.md CHANGED
@@ -87,6 +87,17 @@ If you need select status on form:
87
87
 
88
88
  Works with ext_enum_sets, slicing t_enum_set from original set of enum values
89
89
 
90
+ ### Enum to_i shortcut ( enum_i )
91
+
92
+ Defines method enum_name_i shortcut for Model.enum_names[elem.enum_name]
93
+
94
+ **Ex**
95
+ enum_i :status
96
+ ...
97
+ request.payed_i # 10
98
+
99
+
100
+
90
101
  ### Enum Sets (ext_enum_sets)
91
102
 
92
103
  **Use-case** For example you have pay bills of different types, and you want to group some types in debit and credit "super-types", and have scope PayBill.debit, instance method with question mark as usual enum does pay_bill.debit?.
@@ -1,3 +1,3 @@
1
1
  module EnumExt
2
- VERSION = "0.1.6"
2
+ VERSION = "0.1.7"
3
3
  end
data/lib/enum_ext.rb CHANGED
@@ -69,6 +69,14 @@ module EnumExt
69
69
  end
70
70
  end
71
71
 
72
+ # defines method enum_name_i shortcut for Model.enum_names[elem.enum_name]
73
+
74
+ def enum_i( enum_name )
75
+ define_method "#{enum_name}_i" do
76
+ self.class.send("#{enum_name.to_s.pluralize}")[send(enum_name)].to_i
77
+ end
78
+ end
79
+
72
80
  # Ex ext_enum_sets
73
81
  # This method intend for creating and using some sets of enum values with similar to original enum syntax
74
82
  # it creates: scopes for subsets like enum did, instance method with ? similar to enum methods, and methods like Request.statuses
@@ -123,7 +131,7 @@ module EnumExt
123
131
  end
124
132
 
125
133
  define_singleton_method( "t_#{set_name}_#{enum_name.to_s.pluralize}" ) do
126
- self.send( "t_#{enum_name.to_s.pluralize}" ).slice( *self.send("#{set_name}_#{enum_name.to_s.pluralize}") ) if self.respond_to?("t_#{enum_name.to_s.pluralize}")
134
+ self.send( "t_#{enum_name.to_s.pluralize}" ).slice( *self.send("#{set_name}_#{enum_name.to_s.pluralize}") )
127
135
  end
128
136
 
129
137
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: enum_ext
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - alekseyl
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-10-17 00:00:00.000000000 Z
11
+ date: 2016-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord