module Pod::Specification::RecursiveDependency
Public Instance Methods
direct_dependencies()
click to toggle source
# File lib/cocoapods-external-pod-sorter/cocoapods/specification.rb, line 12 def direct_dependencies @direct_dependencies ||= begin direct_value('dependencies') end end
recursive_dependencies(all_specs)
click to toggle source
# File lib/cocoapods-external-pod-sorter/cocoapods/specification.rb, line 6 def recursive_dependencies(all_specs) @recursive_dependencies ||= begin resolve_recursive_dependencies(all_specs) end end
Protected Instance Methods
direct_value(name, platform = :ios)
click to toggle source
# File lib/cocoapods-external-pod-sorter/cocoapods/specification.rb, line 19 def direct_value(name, platform = :ios) subspec_consumers = recursive_subspecs.select { |s| s.supported_on_platform?(platform) } .map { |s| s.consumer(platform) } .uniq value = (Array(consumer(platform)) + subspec_consumers).map { |c| c.send(name) }.flatten.uniq value end
resolve_recursive_dependencies(specs)
click to toggle source
# File lib/cocoapods-external-pod-sorter/cocoapods/specification.rb, line 27 def resolve_recursive_dependencies(specs) direct_dependencies.map do |dep| spec = specs.find { |s| s.name == dep.name } next dep if spec.nil? || spec.direct_dependencies.empty? (Array(dep) + spec.resolve_recursive_dependencies(specs)).flatten end.compact.flatten.uniq end