jsontemplate 0.4.0 → 0.4.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/jsontemplate/version.rb +1 -1
- data/lib/jsontemplate.rb +15 -6
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 650217220c4a794fb5a58dfcbc27271efbe3672c
|
4
|
+
data.tar.gz: 80c01ac97ce7a7a3a06cf526ce9ffb5929d58955
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 64274d0bb43ab4b8c98bd7f396b70bfe389e2bc7c53ffe0f12c2326ca58d30611f36b5330a47d91431467dbaca4388c2f4fe90e1683eeed65d16a1802ded76bb
|
7
|
+
data.tar.gz: 71524208b91d2b387b928c6e728ca2104d35ab8c63f470d14965d2d780f565f94e6c1ba431766a26882cb5e173687381be63887049304ff00d8ee125be10987a
|
data/Gemfile.lock
CHANGED
data/lib/jsontemplate/version.rb
CHANGED
data/lib/jsontemplate.rb
CHANGED
@@ -31,17 +31,26 @@ class JsonTemplate
|
|
31
31
|
map[v]
|
32
32
|
end
|
33
33
|
|
34
|
+
def process_array(root)
|
35
|
+
root.collect do |v|
|
36
|
+
process(v)
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
def process(root=nil)
|
41
|
+
root ||= @json
|
42
|
+
return process_dict(root) if root.is_a?(Hash)
|
43
|
+
return process_array(root) if root.is_a?(Array)
|
44
|
+
return root
|
45
|
+
end
|
46
|
+
|
34
47
|
def process_dict(root=nil)
|
35
48
|
root ||= @json
|
36
49
|
|
37
|
-
return root if !root.is_a?(Hash)
|
50
|
+
return process(root) if !root.is_a?(Hash) # Backwards compat hack
|
38
51
|
|
39
52
|
pairs = root.collect do |k,v|
|
40
|
-
|
41
|
-
v = process_dict(v)
|
42
|
-
elsif v.is_a?(Array)
|
43
|
-
v = v.collect {|v_| process_dict(v_)}
|
44
|
-
end
|
53
|
+
v = process(v)
|
45
54
|
|
46
55
|
if k == "$DirMerge"
|
47
56
|
process_dirmerge(v)
|