yerba 0.7.4 → 0.7.5

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: bfa98c0309844cc745efbdea0a559825a797ca9eba6eaf2d63e39b2e5098333c
4
- data.tar.gz: 270f11efd66edf472dba1a5a524db66bcdc24f1eba081c4e5b267853f275111b
3
+ metadata.gz: d03e5cb5c88654843c8c86735f91d1e550e81282ccd1c0db8813527c4b4f9898
4
+ data.tar.gz: 805516b5ce364c09dab736e562f4a09d312d70b75ceb2c9e22a9e63fad45eb6d
5
5
  SHA512:
6
- metadata.gz: 2bf52ab64c03b3eaeafaefe547b4cbe3cf67c21c19025aa21da00afe4e36edbc2d8bf3ae33ce06d744fa8616da37aed189e7e91afab3cc904fec63151aeef667
7
- data.tar.gz: edc83ce4ee21753401e258deb33e54c7a206c13ab8b909a9d54595295e396caf0a3eaa58a33746205d5a955d8b62d04da0e9473423adcf118bc1a1cd6a955d67
6
+ metadata.gz: 9cb2ace3f935a023bdd938cde43010f158efc18fce052a7fe5780cf3f9362779d0bc66a463f60453586b24e0b2e6b2ed180cf7d71d2f99095b57d0eb2adc92d8
7
+ data.tar.gz: a4946b677d5b05d2741a09749e540056376dc2d2724f12bc383d722974638576bfdf022a9a02587c75b4167d9d9ae644ddcb45ed6d3f86167423c8d7263c7ba3
@@ -51,11 +51,13 @@ module Yerba
51
51
  end
52
52
 
53
53
  def to_h
54
- value_at(ROOT_SELECTOR)
54
+ value = value_at(ROOT_SELECTOR)
55
+ value.nil? ? {} : value
55
56
  end
56
57
 
57
58
  def to_a
58
- value_at(ROOT_SELECTOR)
59
+ value = value_at(ROOT_SELECTOR)
60
+ value.nil? ? [] : value
59
61
  end
60
62
 
61
63
  def to_yaml
@@ -85,14 +87,20 @@ module Yerba
85
87
  end
86
88
 
87
89
  def find_by(...)
90
+ return nil if empty_root?
91
+
88
92
  root.find_by(...)
89
93
  end
90
94
 
91
95
  def where(...)
96
+ return QueryResult.new(nil, []) if empty_root?
97
+
92
98
  root.where(...)
93
99
  end
94
100
 
95
101
  def pluck(...)
102
+ return [] if empty_root?
103
+
96
104
  root.pluck(...)
97
105
  end
98
106
 
@@ -169,6 +177,10 @@ module Yerba
169
177
 
170
178
  private
171
179
 
180
+ def empty_root?
181
+ root.is_a?(Scalar) && root.value.nil?
182
+ end
183
+
172
184
  def check_stale!
173
185
  return unless stale?
174
186
 
data/lib/yerba/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Yerba
4
- VERSION = "0.7.4"
4
+ VERSION = "0.7.5"
5
5
  end
data/rust/Cargo.toml CHANGED
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "yerba"
3
- version = "0.7.4"
3
+ version = "0.7.5"
4
4
  edition = "2021"
5
5
  authors = ["Marco Roth <marco.roth@intergga.ch>"]
6
6
  description = "YAML Editing and Refactoring with Better Accuracy"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yerba
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.4
4
+ version: 0.7.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marco Roth