synvert-core 0.5.1 → 0.5.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2eacc4ed46475f1e8f697a68f0014a51f8652a6a
4
- data.tar.gz: c2ca725e2348c8bb4cc4ee06fd05eb3d82b2eb53
3
+ metadata.gz: b3826c2b5eaae969299d3b3d05329c69a6b3dc19
4
+ data.tar.gz: c3bb0dc79380ad6c76c449ffef5f9addbe997b8f
5
5
  SHA512:
6
- metadata.gz: 3ee88f43b7986394ed519e0e94364d9a603dac40bd61f25ec83f661beb52ace2036586e19df6ccf0e99e894b4dbe1c0f0123b83fd1bb52af7c8ff03a336f6875
7
- data.tar.gz: 9c17ea44d83d5f885fbc1a6ad08bba5d9d8d551d2b163010d35c9e59127ce11db8472e7751cef67d7ab70cbb1ac0be7c6e79a99f62f8dd50d92c24b9386fae98
6
+ metadata.gz: f7f4fc704f75f3bd1c91d201ae6b6f6b82ac9e47899fa17ffd709f56861712166a50de011e6935630762c7002b2d9b9faa560c29aa9032ddc7bceed6e887c5d4
7
+ data.tar.gz: b259c712216db4b01ee3702f04a997e8f444b083bcd9580a087d5f608582dffc3d9063a3e916fddc9010649bb33d4da817ef476442c87d0373c5fc1748eda02d
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 0.5.2
4
+
5
+ * Add body for :defs node
6
+
3
7
  ## 0.5.1
4
8
 
5
9
  * Remove Rewriter::Instance class methods current and current_source
@@ -89,7 +89,11 @@ class Parser::AST::Node
89
89
  when :begin
90
90
  self.children
91
91
  when :def, :block
92
+ return [] if self.children[2].nil?
92
93
  :begin == self.children[2].type ? self.children[2].body : self.children[2..-1]
94
+ when :defs
95
+ return [] if self.children[3].nil?
96
+ :begin == self.children[3].type ? self.children[3].body : self.children[3..-1]
93
97
  else
94
98
  raise Synvert::Core::MethodNotSupported.new "body is not handled for #{self.inspect}"
95
99
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Synvert
4
4
  module Core
5
- VERSION = "0.5.1"
5
+ VERSION = "0.5.2"
6
6
  end
7
7
  end
@@ -92,6 +92,21 @@ describe Parser::AST::Node do
92
92
  node = parse('def test; foo; bar; end')
93
93
  expect(node.body).to eq [parse('foo'), parse('bar')]
94
94
  end
95
+
96
+ it 'gets for def node with empty body' do
97
+ node = parse('def test; end')
98
+ expect(node.body).to eq []
99
+ end
100
+
101
+ it 'gets for defs node' do
102
+ node = parse('def self.test; foo; bar; end')
103
+ expect(node.body).to eq [parse('foo'), parse('bar')]
104
+ end
105
+
106
+ it 'gets for def node with empty body' do
107
+ node = parse('def self.test; end')
108
+ expect(node.body).to eq []
109
+ end
95
110
  end
96
111
 
97
112
  describe "#keys" do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: synvert-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.5.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Huang
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-22 00:00:00.000000000 Z
11
+ date: 2014-08-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: parser