just_enum 0.1.3 → 0.1.4

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
  SHA256:
3
- metadata.gz: 4144a3816cf763ce987183621ede47966d88ba236e519c9c21feb69ab1e66b6c
4
- data.tar.gz: 6884a42346219860868406a4cff6723624032935bfd19a8145dd053d62d0c375
3
+ metadata.gz: 523aa04d7ad7bfd8f9bda248743b1f41a36800e46b26a3b2ffdd79fc51b11682
4
+ data.tar.gz: dcb8a4c23a3b647d2f2c349e25b6ad2864560249a09366ff9072bd762fabdbad
5
5
  SHA512:
6
- metadata.gz: 11f92aeee695fe7b85147b8e8ec91ecdd30a5167de3b003ad93f384247288212cb0d776a285790ce3cc4769444287ad53abdf93bb794a926f8fbd8588f3e36f5
7
- data.tar.gz: f0da0c2e1bbaa7a0c5ab5b7f8289b6725d481d8c4b02b7cddf17aa6e0119d422b78108c37bc4d2b8c9c83b82cce3145d9deae35cadf31a98e650696750466f11
6
+ metadata.gz: 7fef3772aa9e001de2b6e6ed6fab79f0e2762ca636081ca562719fc6f740457eafccc3e524c574b42fc85efb1818aa23968489f483ed1c090ac2afb2c861c780
7
+ data.tar.gz: b966df0930e9739cf0c220d1b5e33122670122143384dcc1e2fc3f37c08d3a8fcd279ebba611cc6e61a5945a248c20d4d2b91b055f5907517685518aecfe87f3
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- just_enum (0.1.1)
4
+ just_enum (0.1.4)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -9,12 +9,12 @@ module JustEnum::Enum
9
9
  define_method("str_#{field_key.to_s}") { enum_class.options.find { |k, v| v.to_s == field_value.to_s }[1] }
10
10
  end
11
11
  enum_class.options.each_pair do |key, value|
12
- define_method("#{enum_class.name.snakecase}_#{key.to_s}?") { field_value == value }
12
+ define_method("#{snakecase(enum_class.name)}_#{key.to_s}?") { field_value == value }
13
13
  end
14
14
  else
15
15
  define_method("str_#{field_key.to_s}") { enum_class.options[field_value].to_s }
16
16
  enum_class.options.each_with_index do |opt, index|
17
- define_method("#{enum_class.name.snakecase}_#{opt.to_s}?") { field_value == index }
17
+ define_method("#{snakecase(enum_class.name)}_#{opt.to_s}?") { field_value == index }
18
18
  end
19
19
  end
20
20
  define_method("_#{field_key.to_s}") { field_value }
@@ -1,5 +1,4 @@
1
1
 
2
- class String
3
2
 
4
3
  # Underscore a string such that camelcase, dashes and spaces are
5
4
  # replaced by underscores. This is the reverse of {#camelcase},
@@ -13,19 +12,12 @@ class String
13
12
  # Note, this method no longer converts `::` to `/`, in that case
14
13
  # use the {#pathize} method instead.
15
14
 
16
- def snakecase
15
+ def snakecase(str)
17
16
  #gsub(/::/, '/').
18
- gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
17
+ str.gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
19
18
  gsub(/([a-z\d])([A-Z])/,'\1_\2').
20
19
  tr('-', '_').
21
20
  gsub(/\s/, '_').
22
21
  gsub(/__+/, '_').
23
22
  downcase
24
23
  end
25
-
26
- #
27
- alias_method :underscore, :snakecase
28
-
29
- # TODO: Add *separators to #snakecase, like camelcase.
30
-
31
- end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module JustEnum
4
- VERSION = "0.1.3"
4
+ VERSION = "0.1.4"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: just_enum
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rafal Piekara