rexle 1.4.7 → 1.4.8

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
  SHA1:
3
- metadata.gz: cccd7b722cf9a57e41a2f7d531c00ae63a71f5d8
4
- data.tar.gz: 32992fbf14bb3b3998be5d8f69c2d0d6b6f9c996
3
+ metadata.gz: 865cc7a71d4a184f3ce0450eb298ec0f54e326ad
4
+ data.tar.gz: 1307888f6c0f21619f8b75c8c1e4fc121e557956
5
5
  SHA512:
6
- metadata.gz: ccdd5dea57fd41866e24b67ae74702cad2679bfdaac88b769feea0698e7e7cae1c94ad522c6c2314401fa5eb2ebae13b1ba14bee887a5d37df35b387628e9da5
7
- data.tar.gz: d4db447f5c05b95e302a137ebfbe02b701abe624793d5644b4a22bc2c51f26465e8d66545935c36559ebb5c6ffa556ada85882360ce14717007110b3c26c14d4
6
+ metadata.gz: 28d1a7a4fad981131f6a0ac81f984501138e82fe8ca20f0df8466bc238b499b36874a721bd06d54023564deb4e58234e8196602f238d241e9f214e028f89abcf
7
+ data.tar.gz: aadce61ccd4c3cd539ae5b6cc0971c4f294df0abb1ed37df8bae26c2f0e18de8102b746e393ab742b7b9c471c9e1ad1f541f3c16dac3f716d11da761780fce20
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
@@ -1,2 +1,3 @@
1
- �]ǵ\�_oYfB�E=�!�j84�&\<���K@����k}6Z4D*�s]1��o��i+@BM�rv�
2
- - �f#R�К�㏅,-}�T���Ko�<������ú��K�қG�2`�2*��cFqAEn��SoM�%�+�Cz{>����?����K���f�V��T^#��^�Fm���t�
1
+ �ڞ�@��2�� /�az"q�>q�-!�A*#��7io[Rwa��ȇM2� }��l����[(���1�^��7qe{�o�u��X�̃8��2thAuk~�䙧F[����*5Q�
2
+ ��
3
+ Sވ�� 25�t�K�� �5��s�W)(���7{s:�?�9V�&�%�'#�,ܙ�>
data/lib/rexle.rb CHANGED
@@ -11,6 +11,7 @@ require 'backtrack-xpath'
11
11
 
12
12
 
13
13
  # modifications:
14
+ # 10-Sep-2017: bug fix: The following XPath has now been tested => //.[@id]
14
15
  # 10-Aug-2017: feature: Rexle now has a member variable (@rexle) to keep
15
16
  # track of the working document when elements are passed to
16
17
  # different documents
@@ -704,7 +705,19 @@ class Rexle
704
705
 
705
706
  remaining_xpath = raw_path[1..-1]
706
707
 
707
- return remaining_xpath.empty? ? self : self.xpath(remaining_xpath)
708
+ if remaining_xpath.empty? then
709
+ if xpath_value.length > 0 and xpath_value =~ /\[/ then
710
+
711
+ r = eval(attr_search.sub(/^h/,'self.attributes'))
712
+ return self if r
713
+
714
+ else
715
+ return self
716
+ end
717
+ else
718
+ return self.xpath(remaining_xpath)
719
+ end
720
+
708
721
  elsif element_name.nil?
709
722
  return eval attr_search
710
723
  else
@@ -866,6 +879,7 @@ class Rexle
866
879
  new_item = item.deep_clone
867
880
  add_element new_item
868
881
  item.delete
882
+ item = nil
869
883
  item = new_item
870
884
  new_item
871
885
  else
@@ -951,7 +965,7 @@ class Rexle
951
965
 
952
966
  if obj.is_a? String then
953
967
 
954
- self.xpath(obj).each {|e| e.delete}
968
+ self.xpath(obj).each {|e| e.delete; e = nil}
955
969
 
956
970
  else
957
971
 
@@ -1418,7 +1432,7 @@ class Rexle
1418
1432
 
1419
1433
  def delete(xpath)
1420
1434
 
1421
- @doc.xpath(xpath).each {|e| e.delete }
1435
+ @doc.xpath(xpath).each {|e| e.delete; e = nil }
1422
1436
 
1423
1437
  end
1424
1438
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rexle
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.7
4
+ version: 1.4.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -31,7 +31,7 @@ cert_chain:
31
31
  CqFh6U4iXSHeN7EtB+IaYwj0O7/uQThVBDM+MzSHp5u25hrVs7KrKap0f6rdAVcF
32
32
  1V8kvBbe/enp7g==
33
33
  -----END CERTIFICATE-----
34
- date: 2017-08-10 00:00:00.000000000 Z
34
+ date: 2017-09-10 00:00:00.000000000 Z
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rexleparser
metadata.gz.sig CHANGED
Binary file