ree 1.0.23 → 1.0.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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