code_analyzer 0.4.2 → 0.4.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/code_analyzer/sexp.rb +4 -18
- data/lib/code_analyzer/version.rb +1 -1
- data/spec/code_analyzer/sexp_spec.rb +5 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 197e76348bf185cf8411c4d2c156e1506079db25
|
4
|
+
data.tar.gz: 852ed2dfd4b1775177c3ffc02e9686e18db59857
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 038323d59923ff03b2eec36b31c3b3a56773c98d6e18f25328b9070c5e30ba6a2b7d45e8f0e1e2a60648ad6a54ff17bec41ee1c6bf02475b4ae0a989424dbd5e
|
7
|
+
data.tar.gz: 536ff7ed08e6ed48e75cde4fb03b1ece2528b3146b73c836823312ea8efd6d545207bba0d0fba6f930f0814f46e90fa88c4d994e16662a14a45ec64ab3f05952
|
data/lib/code_analyzer/sexp.rb
CHANGED
@@ -739,33 +739,19 @@ class Sexp
|
|
739
739
|
when :array
|
740
740
|
if nil == self[1]
|
741
741
|
[]
|
742
|
-
elsif :words_add
|
743
|
-
self[1].array_values
|
744
|
-
elsif :qwords_add == self[1].sexp_type
|
742
|
+
elsif [:words_add, :qwords_add, :qsymbols_add].include? self[1].sexp_type
|
745
743
|
self[1].array_values
|
746
744
|
else
|
747
745
|
arguments.all
|
748
746
|
end
|
749
|
-
when :words_add
|
750
|
-
values = []
|
751
|
-
node = self
|
752
|
-
while true
|
753
|
-
if :words_add == node.sexp_type
|
754
|
-
values.unshift node[2]
|
755
|
-
node = node[1]
|
756
|
-
elsif :words_new == node.sexp_type
|
757
|
-
break
|
758
|
-
end
|
759
|
-
end
|
760
|
-
values
|
761
|
-
when :qwords_add
|
747
|
+
when :words_add, :qwords_add, :qsymbols_add
|
762
748
|
values = []
|
763
749
|
node = self
|
764
750
|
while true
|
765
|
-
if :qwords_add
|
751
|
+
if [:words_add, :qwords_add, :qsymbols_add].include? node.sexp_type
|
766
752
|
values.unshift node[2]
|
767
753
|
node = node[1]
|
768
|
-
elsif :qwords_new
|
754
|
+
elsif [:words_new, :qwords_new, :qsymbols_new].include? node.sexp_type
|
769
755
|
break
|
770
756
|
end
|
771
757
|
end
|
@@ -567,6 +567,11 @@ describe Sexp do
|
|
567
567
|
node = parse_content("%w(first_name last_name)").grep_node(sexp_type: :array)
|
568
568
|
node.array_values.map(&:to_s).should == ["first_name", "last_name"]
|
569
569
|
end
|
570
|
+
|
571
|
+
it "should get array value with array and qsymbols_add" do
|
572
|
+
node = parse_content("%i(first_name last_name)").grep_node(sexp_type: :array)
|
573
|
+
node.array_values.map(&:to_s).should == ["first_name", "last_name"]
|
574
|
+
end
|
570
575
|
end
|
571
576
|
|
572
577
|
describe "alias" do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: code_analyzer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Richard Huang
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-09-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sexp_processor
|