Class: Mirrors::PackageMirror
- Inherits:
-
Mirror
- Object
- Mirror
- Mirrors::PackageMirror
show all
- Defined in:
- lib/mirrors/package_mirror.rb
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Mirror
#initialize, #mirrors?, #reflectee, #subject_id
Class Method Details
.reflect(name) ⇒ Object
6
7
8
|
# File 'lib/mirrors/package_mirror.rb', line 6
def self.reflect(name)
new(name)
end
|
Instance Method Details
#children ⇒ Object
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
# File 'lib/mirrors/package_mirror.rb', line 18
def children
names = PackageInference.contents_of_package(@subject)
classes = (names || [])
.map { |n| Object.const_get(n) }
.select { |c| c.is_a?(Module) }
.sort_by(&:name)
class_mirrors = mirrors(classes)
subpackages = PackageInference.qualified_packages
.select { |pkg| pkg.start_with?("#{@subject}:") }
.sort
puts subpackages.inspect
package_mirrors = subpackages.map { |pkg| PackageMirror.reflect(pkg) }
package_mirrors.concat(class_mirrors)
end
|
#fullname ⇒ Object
14
15
16
|
# File 'lib/mirrors/package_mirror.rb', line 14
def fullname
@subject
end
|
#name ⇒ Object
10
11
12
|
# File 'lib/mirrors/package_mirror.rb', line 10
def name
@subject.sub(/.*:/, '')
end
|