nginx-conf 0.0.9 → 0.0.10

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/nginx-conf/nginx_conf.rb +10 -41
  3. metadata +16 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c23dc53e45230ebde9f65c36c4a786b9aeee1cac
4
- data.tar.gz: 084da322263674461034402d8c66ec4fca4483bb
3
+ metadata.gz: 9a91fd88edabcc9ae34ed5d2b0bb2088bd85a141
4
+ data.tar.gz: a9e4cd3b0879aa03974c5a37d31abf216f4880f4
5
5
  SHA512:
6
- metadata.gz: 1ba74cf84d1764fe5cbe0e16ce089067de35f7162effef4c5d034ce287897e004708c44c205e846268337414bf3bfaa0ad42c7dc3233998df3a215fbd47fa083
7
- data.tar.gz: 753d7762827745f418f6e1ab69b135cde7dbc8a82242306a5f5eb31dfd2c3e4b787207163a383e8bee4d190e84fe56ff9b87377f8760e4f3e32c2832e5cd04ac
6
+ metadata.gz: 06891eaccc49fa1017556bd7b2d160f052e50616ec8dad0a045e4a9340e3d3b8f266f49b0c4d8a24e3e6abeb20fc6ba0d76aab70d874bf551cca25cd224544d6
7
+ data.tar.gz: 9ef8ce8fa47860cf30b9e15add110e2609fd94874209beb96612fe4ab84f096d88059d74f0257b9bbac4fce6c77383a715a53b1697b8042ad53497bb13633b2b
@@ -1,4 +1,5 @@
1
1
  require 'block-is-hash'
2
+ require 'map-rec'
2
3
 
3
4
  require_relative 'compiler'
4
5
 
@@ -6,50 +7,18 @@ require_relative 'compiler'
6
7
 
7
8
  def nginx_conf &block
8
9
  repeats = %i(server load_module fastcgi_param set if_)
9
-
10
- hash = block_is_hash repeats, &block
11
-
12
- replace_elems! hash
13
- replace_elems! repeats
14
-
15
- Compiler.new(repeats).compile hash
10
+ Compiler.new(replace_elems repeats)
11
+ .compile replace_elems(block_is_hash(repeats, &block))
16
12
  end
17
13
 
18
14
 
19
- def replace_elems! object
20
- { if_: :if, return_: :return }.each do |origin, subst|
21
- replace_elem! origin, subst, object
22
- end
23
- end
24
-
25
-
26
- def replace_elem! origin, subst, object
27
- replace = lambda { |o| replace_elem! origin, subst, o }
28
-
29
- case object
30
- when Hash
31
- new_pairs = {}
32
-
33
- object.each do |key, value|
34
- case origin
35
- when key
36
- object.delete key
37
- new_pairs[subst] = value
38
- when value
39
- object[key] = subst
40
- else
41
- replace.call value
42
- end
43
- end
44
-
45
- object.merge! new_pairs
46
- when Array
47
- object.each_with_index do |value, key|
48
- if value == origin
49
- object[key] = subst
50
- else
51
- replace.call value
52
- end
15
+ def replace_elems object
16
+ map = { if_: :if, return_: :return }
17
+ map_rec object do |x|
18
+ if map.keys.include? x
19
+ map[x]
20
+ else
21
+ x
53
22
  end
54
23
  end
55
24
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nginx-conf
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yota Toyama
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-10-26 00:00:00.000000000 Z
11
+ date: 2016-10-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: block-is-hash
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: map-rec
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  description: nginx.conf generator with pretty DSL
28
42
  email: raviqqe@gmail.com
29
43
  executables: []