ree 1.0.23 → 1.0.25

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
  SHA256:
3
- metadata.gz: 60b602bd07b9adc8ba5cbcee420750e3b2d5266056c888ad750115cbb393c4ea
4
- data.tar.gz: 1431632c86f3dacee9ad1f4fee6550e3a56b06dca780d0d3c6c46245c812b407
3
+ metadata.gz: ca6448ec5832c67a3d07ae54af8f64d8b838b4cedcbd01a0a7612238966fb655
4
+ data.tar.gz: c196235e14c6a3a9f4de2696492fa3e4d048071763edb5beb3d3b50f9d8421a6
5
5
  SHA512:
6
- metadata.gz: 58c730e7c3930abe99115bdaffa4175b886c29dd67ef7575b196f6284782f192722dfd706e5e6174808b1cdb0ab0126a216cfa1ccfa6d99fe0a287289e63d708
7
- data.tar.gz: 67ebd3b56bed90000f00033e7a7cd9f2a5959df2dd4acc58f168e5830c49bf989b3ba74fdf77902d3e0ceec921de7180a55185e5665f33294316e8d0074f51ca
6
+ metadata.gz: 8908b21abf27defce293ab10a16c9545d987f50064a26c2398886f09972e9d8554d565567b1e8638ac3854514c5bd6df21930fbe43e497890111c83fb36a9833
7
+ data.tar.gz: 385cb8a0f4aef407c3630d7ff95601072e6706fd74ab3efc47f24cca9f88e55dc964f58bb748aaed7f69ae94971145ba1c7559d62df82a8602a3616b15090f06
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ree (1.0.23)
4
+ ree (1.0.25)
5
5
  commander (~> 4.6.0)
6
6
 
7
7
  GEM
@@ -53,7 +53,7 @@ module Ree
53
53
  end
54
54
 
55
55
  next if package.dir.nil?
56
-
56
+
57
57
  facade.load_entire_package(package.name)
58
58
 
59
59
  package_hsh = Ree::CLI::IndexPackage.send(:index_package_entry, package)
@@ -73,7 +73,7 @@ module Ree
73
73
  private
74
74
 
75
75
  def index_public_methods_for_package_classes(package, index_hash)
76
- package.objects.each do |obj|
76
+ package.objects.each do |obj|
77
77
  klass = obj.klass
78
78
  klass_name = demodulize(klass.to_s)
79
79
  obj_name = obj.name.to_s
@@ -96,22 +96,25 @@ module Ree
96
96
  end
97
97
  end
98
98
 
99
- recursively_index_module(package.module, index_hash, package)
99
+ recursively_index_module(package.module, index_hash, package, {})
100
100
 
101
101
  index_hash
102
102
  end
103
103
 
104
- def recursively_index_module(mod, index_hsh, package)
104
+ def recursively_index_module(mod, index_hsh, package, mod_index)
105
105
  return if !mod.is_a?(Module)
106
+ return if mod_index[mod]
107
+
108
+ mod_index[mod] = true
106
109
 
107
110
  mod.constants.each do |const_name|
108
111
  const = mod.const_get(const_name)
109
112
 
110
- recursively_index_module(const, index_hsh, package)
113
+ recursively_index_module(const, index_hsh, package, mod_index)
111
114
 
112
115
  next if !const.is_a?(Class)
113
116
  next if package.objects.any? { |o| o.klass == const }
114
- next if index_hsh[:classes].has_key?(demodulize(const.name))
117
+ next if index_hsh[:classes].has_key?(demodulize(const.name))
115
118
 
116
119
  const_abs_path = mod.const_source_location(const.name).first
117
120
  next if !const_abs_path
@@ -149,15 +152,15 @@ module Ree
149
152
  end
150
153
 
151
154
  def index_dao(klass, rpath, package_name)
152
- filters = klass
153
- .instance_variable_get(:@filters)
154
- .map {
155
- {
156
- name: _1.name,
157
- parameters: _1.proc.parameters.map { |param| { name: param.last, required: param.first } },
158
- location: _1.proc&.source_location&.last
159
- }
155
+ filters = (klass.instance_variable_get(:@filters) || []).map do
156
+ {
157
+ name: _1.name,
158
+ parameters: _1.proc.parameters.map { |param|
159
+ {name: param.last, required: param.first}
160
+ },
161
+ location: _1.proc&.source_location&.last
160
162
  }
163
+ end
161
164
 
162
165
  {
163
166
  path: rpath,
data/lib/ree/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Ree
4
- VERSION = "1.0.23"
4
+ VERSION = "1.0.25"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ree
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.23
4
+ version: 1.0.25
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ruslan Gatiyatov