patter 1.0.17 → 1.0.18

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
  SHA256:
3
- metadata.gz: feca968562afa96f07592360b2f39547be4234749a688de9663e6799dcb0b2b8
4
- data.tar.gz: c08259a4175279de6212775b86a41c7e7d86a23c8bf071caa88751d86e6a0c8e
3
+ metadata.gz: 5181b1bfb1f738b35f986f97b3d071687e3d0af1af1cc069e22d7ade5c9faf98
4
+ data.tar.gz: 7e306f03979e6acce4fe21297b09ba6ee25ead93cb4544cfcee5c8ddfba3d3b3
5
5
  SHA512:
6
- metadata.gz: e882198a426498b152aae96c9d27a9effb703d25970dfb451e8febdf9ab142888f463855a8bb903d38585e79dfb6bd8d36f0398c61512b2cd6f6b4c8e19fee0d
7
- data.tar.gz: 0646c6f159bc7501ee055bae3156bfb912a73bf2bb69258f195c324fc7b4c1fba1693a9b4fcad7f4c4b41a4008edb5415850445dac6765e0e819e962eab70b6c
6
+ metadata.gz: f843b6177a4a9fc33f4ff90125e6f619675c85e00499a6c2b326ff4d264a5ecd7ee1c4404205f12952282504f5a9788c18dd9ab0964544329415eeebb4d7ca49
7
+ data.tar.gz: b6eb76ac6b4ba41a455baead5533595875ffce72d83d17ecc9a35e29a8d28a4fdd02159167d7d0fcbe140d16082cceddee281aa0ba55220e5fe1dcadfae5afd0
data/bin/patter CHANGED
@@ -12,8 +12,8 @@ end
12
12
 
13
13
  usage = <<~EOF
14
14
  Usage:
15
- #{File.basename $0} [options] <pattern>
16
- #{File.basename $0} ( --version | --help )
15
+ #{File.basename($0)} [options] <pattern>
16
+ #{File.basename($0)} ( --version | --help )
17
17
 
18
18
  Options:
19
19
  -n, --count N Number of patterns to generate [default: 10]
@@ -43,8 +43,8 @@ usage = <<~EOF
43
43
  EOF
44
44
 
45
45
  begin
46
- Main.run(Docopt::docopt(usage))
47
- rescue Docopt::Exit => e
46
+ Main.run(Docopt.docopt(usage))
47
+ rescue Docopt::Exit
48
48
  puts usage
49
49
  exit 2
50
50
  end
@@ -2,46 +2,57 @@ module Patter
2
2
  class Inflector
3
3
  class << self
4
4
  RULES = [
5
- [/(z)ombies$/i, "\\1ombies"],
6
- [/(z)ombie$/i, "\\1ombies"],
7
- [/k(?i)ine$/, "kine"],
8
- [/K(?i)ine$/, "Kine"],
9
- [/c(?i)ow$/, "kine"],
10
- [/C(?i)ow$/, "Kine"],
11
- [/(m)oves$/i, "\\1oves"],
12
- [/(m)ove$/i, "\\1oves"],
13
- [/(s)exes$/i, "\\1exes"],
14
- [/(s)ex$/i, "\\1exes"],
15
- [/(c)hildren$/i, "\\1hildren"],
16
- [/(c)hild$/i, "\\1hildren"],
17
- [/(m)en$/i, "\\1en"],
18
- [/(m)an$/i, "\\1en"],
19
- [/(p)eople$/i, "\\1eople"],
20
- [/(p)erson$/i, "\\1eople"],
21
- [/(quiz)$/i, "\\1zes"],
22
- [/^(oxen)$/i, "\\1"],
23
- [/^(ox)$/i, "\\1en"],
24
- [/^(m|l)ice$/i, "\\1ice"],
25
- [/^(m|l)ouse$/i, "\\1ice"],
26
- [/(matr|vert|ind)(?:ix|ex)$/i, "\\1ices"],
27
- [/(x|ch|ss|sh)$/i, "\\1es"],
28
- [/([^aeiouy]|qu)y$/i, "\\1ies"],
29
- [/(hive)$/i, "\\1s"],
30
- [/(?:([^f])fe|([lr])f)$/i, "\\1\\2ves"],
31
- [/sis$/i, "ses"],
32
- [/([ti])a$/i, "\\1a"],
33
- [/([ti])um$/i, "\\1a"],
34
- [/(buffal|tomat)o$/i, "\\1oes"],
35
- [/(bu)s$/i, "\\1ses"],
36
- [/(alias|status)$/i, "\\1es"],
37
- [/(octop|vir)i$/i, "\\1i"],
38
- [/(octop|vir)us$/i, "\\1i"],
39
- [/^(ax|test)is$/i, "\\1es"],
40
- [/s$/i, "s"],
41
- [/$/, "s"]
5
+ [/(z)ombies$/i, '\\1ombies'],
6
+ [/(z)ombie$/i, '\\1ombies'],
7
+ [/k(?i)ine$/, 'kine'],
8
+ [/K(?i)ine$/, 'Kine'],
9
+ [/c(?i)ow$/, 'kine'],
10
+ [/C(?i)ow$/, 'Kine'],
11
+ [/(m)oves$/i, '\\1oves'],
12
+ [/(m)ove$/i, '\\1oves'],
13
+ [/(s)exes$/i, '\\1exes'],
14
+ [/(s)ex$/i, '\\1exes'],
15
+ [/(c)hildren$/i, '\\1hildren'],
16
+ [/(c)hild$/i, '\\1hildren'],
17
+ [/(m)en$/i, '\\1en'],
18
+ [/(m)an$/i, '\\1en'],
19
+ [/(p)eople$/i, '\\1eople'],
20
+ [/(p)erson$/i, '\\1eople'],
21
+ [/(quiz)$/i, '\\1zes'],
22
+ [/^(oxen)$/i, '\\1'],
23
+ [/^(ox)$/i, '\\1en'],
24
+ [/^(m|l)ice$/i, '\\1ice'],
25
+ [/^(m|l)ouse$/i, '\\1ice'],
26
+ [/(matr|vert|ind)(?:ix|ex)$/i, '\\1ices'],
27
+ [/(x|ch|ss|sh)$/i, '\\1es'],
28
+ [/([^aeiouy]|qu)y$/i, '\\1ies'],
29
+ [/(hive)$/i, '\\1s'],
30
+ [/(?:([^f])fe|([lr])f)$/i, '\\1\\2ves'],
31
+ [/sis$/i, 'ses'],
32
+ [/([ti])a$/i, '\\1a'],
33
+ [/([ti])um$/i, '\\1a'],
34
+ [/(buffal|tomat)o$/i, '\\1oes'],
35
+ [/(bu)s$/i, '\\1ses'],
36
+ [/(alias|status)$/i, '\\1es'],
37
+ [/(octop|vir)i$/i, '\\1i'],
38
+ [/(octop|vir)us$/i, '\\1i'],
39
+ [/^(ax|test)is$/i, '\\1es'],
40
+ [/s$/i, 's'],
41
+ [/$/, 's'],
42
42
  ]
43
43
 
44
- UNCOUNTABLES = %w(equipment information rice money species series fish sheep jeans police)
44
+ UNCOUNTABLES = %w[
45
+ equipment
46
+ information
47
+ rice
48
+ money
49
+ species
50
+ series
51
+ fish
52
+ sheep
53
+ jeans
54
+ police
55
+ ]
45
56
 
46
57
  def pluralize(str)
47
58
  if str.empty? || UNCOUNTABLES.any?(str)
@@ -23,7 +23,8 @@ module Patter
23
23
 
24
24
  def to_s
25
25
  @pattern.gsub(/\{([#{TAGS.keys.join}])(:(\w+))?\}/) do
26
- tag, modifiers = $1, $3
26
+ tag = $1
27
+ modifiers = $3
27
28
  source = @source_provider.get_source(TAGS[tag])
28
29
 
29
30
  next source.get_sample if !modifiers
@@ -13,7 +13,7 @@ module Patter
13
13
  end
14
14
 
15
15
  def chars
16
- 'abcdefghijklmnopqrstuvwxyz'.split('').shuffle
16
+ 'abcdefghijklmnopqrstuvwxyz'.chars.shuffle
17
17
  end
18
18
 
19
19
  def adjectives
@@ -25,11 +25,11 @@ module Patter
25
25
  end
26
26
 
27
27
  def symbols
28
- '!#$%&()*+,-=./:;<?>@[\]^_'.split('')
28
+ '!#$%&()*+,-=./:;<?>@[\]^_'.chars
29
29
  end
30
30
 
31
31
  def digits
32
- '123456789'.split('')
32
+ '123456789'.chars
33
33
  end
34
34
  end
35
35
  end
@@ -1,3 +1,3 @@
1
1
  module Patter
2
- VERSION = "1.0.17"
2
+ VERSION = '1.0.18'
3
3
  end
data/lib/patter.rb CHANGED
@@ -5,7 +5,7 @@ require 'singleton'
5
5
 
6
6
  module Patter
7
7
  def self.root_dir
8
- File.expand_path('../..', __FILE__)
8
+ File.expand_path('..', __dir__)
9
9
  end
10
10
  end
11
11
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: patter
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.17
4
+ version: 1.0.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - crdx
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-10-05 00:00:00.000000000 Z
11
+ date: 2021-10-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: colorize
@@ -39,19 +39,19 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: 0.6.1
41
41
  - !ruby/object:Gem::Dependency
42
- name: simplecov
42
+ name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0.21'
47
+ version: '13.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0.21'
54
+ version: '13.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -67,19 +67,19 @@ dependencies:
67
67
  - !ruby/object:Gem::Version
68
68
  version: '3.8'
69
69
  - !ruby/object:Gem::Dependency
70
- name: rake
70
+ name: simplecov
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '13.0'
75
+ version: '0.21'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '13.0'
82
+ version: '0.21'
83
83
  description:
84
84
  email:
85
85
  executables:
@@ -109,7 +109,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
109
109
  requirements:
110
110
  - - ">="
111
111
  - !ruby/object:Gem::Version
112
- version: '0'
112
+ version: '3.0'
113
113
  required_rubygems_version: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - ">="