code_analyzer 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -17,14 +17,17 @@ class Sexp
17
17
  case sexp_type
18
18
  when :def, :defs, :command, :command_call, :call, :fcall, :method_add_arg, :method_add_block,
19
19
  :var_ref, :vcall, :const_ref, :const_path_ref, :class, :module, :if, :unless, :elsif, :ifop, :binary,
20
- :alias, :symbol_literal, :symbol, :aref, :hash, :assoc_new, :string_literal
20
+ :alias, :symbol_literal, :symbol, :aref, :hash, :assoc_new, :string_literal,
21
+ :massign
21
22
  self[1].line
22
23
  when :assoclist_from_args, :bare_assoc_hash
23
24
  self[1][0].line
24
- when :string_add
25
+ when :string_add, :opassign
25
26
  self[2].line
26
27
  when :array
27
28
  array_values.first.line
29
+ when :mlhs_add
30
+ self.last.line
28
31
  else
29
32
  self.last.first if self.last.is_a? Array
30
33
  end
@@ -1,3 +1,3 @@
1
1
  module CodeAnalyzer
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
@@ -10,6 +10,12 @@ describe Sexp do
10
10
  end
11
11
  alias :test_new :test
12
12
  CONST = { foo: :bar }
13
+ def massign
14
+ a, b = 10, 20
15
+ end
16
+ def opassign(a, b)
17
+ a+= b
18
+ end
13
19
  end
14
20
  EOF
15
21
  @node = parse_content(content)
@@ -38,6 +44,14 @@ describe Sexp do
38
44
  it "should return hash line" do
39
45
  @node.grep_node(sexp_type: :hash).line.should == 6
40
46
  end
47
+
48
+ it "should return massign line" do
49
+ @node.grep_node(sexp_type: :massign).line.should == 8
50
+ end
51
+
52
+ it "should return opassign line" do
53
+ @node.grep_node(sexp_type: :opassign).line.should == 11
54
+ end
41
55
  end
42
56
 
43
57
  describe "grep_nodes" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: code_analyzer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-09-04 00:00:00.000000000 Z
12
+ date: 2012-09-17 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: sexp_processor
16
- requirement: !ruby/object:Gem::Requirement
16
+ requirement: &70274611483180 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,15 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ! '>='
28
- - !ruby/object:Gem::Version
29
- version: '0'
24
+ version_requirements: *70274611483180
30
25
  - !ruby/object:Gem::Dependency
31
26
  name: rspec
32
- requirement: !ruby/object:Gem::Requirement
27
+ requirement: &70274611482560 !ruby/object:Gem::Requirement
33
28
  none: false
34
29
  requirements:
35
30
  - - ! '>='
@@ -37,12 +32,7 @@ dependencies:
37
32
  version: '0'
38
33
  type: :development
39
34
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ! '>='
44
- - !ruby/object:Gem::Version
45
- version: '0'
35
+ version_requirements: *70274611482560
46
36
  description: a code analyzer tool which extracted from rails_best_practices, it helps
47
37
  you easily build your own code analyzer tool.
48
38
  email:
@@ -96,7 +86,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
96
86
  version: '0'
97
87
  requirements: []
98
88
  rubyforge_project:
99
- rubygems_version: 1.8.24
89
+ rubygems_version: 1.8.17
100
90
  signing_key:
101
91
  specification_version: 3
102
92
  summary: a code analyzer helps you build your own code analyzer tool.