rails_best_practices 0.2.8 → 0.2.9

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.8
1
+ 0.2.9
@@ -51,22 +51,22 @@ module RailsBestPractices
51
51
  def remember_references(node)
52
52
  create_table_node = node.grep_nodes({:node_type => :call, :message => :create_table}).first
53
53
  if create_table_node
54
- table_name = eval(create_table_node.arguments[1].to_ruby).to_s
54
+ table_name = create_table_node.arguments[1].to_ruby_string
55
55
  node.grep_nodes({:node_type => :call, :message => :integer}).each do |integer_node|
56
- column_name = eval(integer_node.arguments[1].to_ruby).to_s
56
+ column_name = integer_node.arguments[1].to_ruby_string
57
57
  if column_name =~ /_id$/
58
58
  @references[table_name] ||= []
59
59
  @references[table_name] << column_name
60
60
  end
61
61
  end
62
62
  node.grep_nodes({:node_type => :call, :message => :references}).each do |references_node|
63
- column_name = eval(references_node.arguments[1].to_ruby).to_s + "_id"
63
+ column_name = references_node.arguments[1].to_ruby_string + "_id"
64
64
  @references[table_name] ||= []
65
65
  @references[table_name] << column_name
66
66
  end
67
67
  node.grep_nodes({:node_type => :call, :message => :column}).each do |column_node|
68
- if 'integer' == eval(column_node.arguments[2].to_ruby).to_s
69
- column_name = eval(column_node.arguments[1].to_ruby).to_s
68
+ if 'integer' == column_node.arguments[2].to_ruby_string
69
+ column_name = column_node.arguments[1].to_ruby_string
70
70
  if column_name =~ /_id$/
71
71
  @references[table_name] ||= []
72
72
  @references[table_name] << column_name
@@ -79,8 +79,8 @@ module RailsBestPractices
79
79
  def remember_indexes(node)
80
80
  add_index_nodes = node.grep_nodes({:node_type => :call, :message => :add_index})
81
81
  add_index_nodes.each do |add_index_node|
82
- table_name = eval(add_index_node.arguments[1].to_ruby).to_s
83
- column_name = eval(add_index_node.arguments[2].to_ruby).to_s
82
+ table_name = add_index_node.arguments[1].to_ruby_string
83
+ column_name = add_index_node.arguments[2].to_ruby_string
84
84
  @indexes[table_name] ||= []
85
85
  @indexes[table_name] << column_name
86
86
  end
@@ -32,7 +32,7 @@ module RailsBestPractices
32
32
  node.body.grep_nodes(:message => :belongs_to).collect do |body_node|
33
33
  class_name = node.subject.to_s.underscore
34
34
  @associations[class_name] ||= []
35
- @associations[class_name] << eval(body_node.arguments[1].to_ruby).to_s
35
+ @associations[class_name] << body_node.arguments[1].to_ruby_string
36
36
  end
37
37
  end
38
38
 
@@ -34,7 +34,7 @@ module RailsBestPractices
34
34
 
35
35
  def remember_callbacks(node)
36
36
  node.arguments[1..-1].each do |argument|
37
- @callbacks << eval(argument.to_ruby).to_s
37
+ @callbacks << argument.to_ruby_string
38
38
  end
39
39
  end
40
40
 
@@ -101,4 +101,9 @@ class Sexp
101
101
  def to_ruby
102
102
  Ruby2Ruby.new.process(self) unless self.empty?
103
103
  end
104
+
105
+ def to_ruby_string
106
+ return nil if self.empty?
107
+ eval(Ruby2Ruby.new.process(self)).to_s
108
+ end
104
109
  end
@@ -1,11 +1,11 @@
1
1
  # Generated by jeweler
2
- # DO NOT EDIT THIS FILE
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run `rake gemspec`
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{rails_best_practices}
8
- s.version = "0.2.8"
8
+ s.version = "0.2.9"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Richard Huang"]
@@ -116,3 +116,4 @@ Gem::Specification.new do |s|
116
116
  s.add_dependency(%q<ruby2ruby>, [">= 0"])
117
117
  end
118
118
  end
119
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_best_practices
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.8
4
+ version: 0.2.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Huang