text-gen 0.6.0 → 0.6.1

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: bb11c37e477733c8e2110df029bb47bf31f391d168437fd6a3cceef35ab9f4bb
4
- data.tar.gz: 6fe3b7da82c39bd823487cc3f59a8c2d62128eba64383a7ffb5cc08d59a1e491
3
+ metadata.gz: 49044057cb087e22b62a113c84d6575c3bd23e1320a841cbebf650bd244c0edb
4
+ data.tar.gz: c4a93ede17d96f95f218060503d4d9cd527e69c3d75c3759bb2479fe6dbbc47f
5
5
  SHA512:
6
- metadata.gz: 8832f397da93e04f7172cad9db64e6ddcde531a47535c0f9a3832f9fe6202e78dd444970d407c31edc37b597bfe23afd713ce5b6b99f3c21fb789f3c3e605aa6
7
- data.tar.gz: a74fc34f4b9b08c91dc22518187851b41f3fafab67dd923e6f7f883ceaa5d3cf1b3b0647ef38ed303f4c74aec2ef8877da1d775d1ff7dada1d54ac95ae3ec1a7
6
+ metadata.gz: 606e6034518c44efad32c68b559daff0dabad3d96e09d3bd22394b47e77c03d17f0aa3259e812d285a226c070f4223b1627204ff07a71d54ab733a8da5ec611e
7
+ data.tar.gz: b3deabab0cd407e5723ad275cdbda413728b515b62d836bf69a4a75642dae9082165956f0f2b5c09ab8adaa7936a0bdb6713a8eb89bec6b206859a905c7aed8f
@@ -83,10 +83,10 @@ module Text
83
83
  type: type,
84
84
  value: val * mul,
85
85
  multiplier: 1
86
- ).tap do |result|
87
- result.components.append(*results)
88
- result.merge_all_meta(results)
89
- result.merge_meta(meta)
86
+ ).tap do |s|
87
+ s.components.append(*results)
88
+ s.merge_all_meta(results)
89
+ s.merge_meta(meta)
90
90
  end
91
91
  end
92
92
  end
@@ -57,7 +57,7 @@ module Text
57
57
  current_filters = merge_filters(builder, filters)
58
58
  current_items = apply_item_filters(builder["items"], current_filters)
59
59
  result = run_items(builder["strategy"], current_items, current_filters, builder["meta"], depth)
60
- return error_result("{run items empty}") unless result
60
+ return unless result
61
61
 
62
62
  result.merge_meta(builder["meta"])
63
63
  result = apply_result_function(result, current_filters)
@@ -96,12 +96,16 @@ module Text
96
96
  def run_random_item(strategy, items, meta, depth)
97
97
  item = random_item(strategy, items)
98
98
  result = run_item(item, depth)
99
+ return unless result
100
+
99
101
  result.merge_meta(meta)
100
102
  result
101
103
  end
102
104
 
103
105
  def run_item_sequence(items, filters, meta, depth)
104
- results = items.map { |item| run_item(item, depth) }
106
+ results = items.map { |item| run_item(item, depth) }.compact
107
+ return if results.empty?
108
+
105
109
  Result.merge(results, filters:, meta:, type: :sequence)
106
110
  end
107
111
 
@@ -113,9 +117,9 @@ module Text
113
117
  current_weight += [item.fetch("weight", 1).to_i, 1].max
114
118
  current_weight > rand_weight
115
119
  end
116
- raise NoItemMatched("weight #{rand_weight} exceeds #{total_weight}") unless item
117
-
118
120
  result = run_item(item, depth)
121
+ return unless result
122
+
119
123
  result.merge_meta(meta)
120
124
  result
121
125
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Text
4
4
  module Gen
5
- VERSION = "0.6.0"
5
+ VERSION = "0.6.1"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: text-gen
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - G Palmer