class Pod::Xcode::LinkageAnalyzer

Public Class Methods

dynamic_binary?(binary) click to toggle source

@param [Pathname] binary

The file to be checked for being a dynamic Mach-O binary.

@return [Boolean] Whether `binary` can be dynamically linked.

# File lib/cocoapods/xcode/linkage_analyzer.rb, line 11
def self.dynamic_binary?(binary)
  @cached_dynamic_binary_results ||= {}
  return @cached_dynamic_binary_results[binary] unless @cached_dynamic_binary_results[binary].nil?
  return false unless binary.file?

  @cached_dynamic_binary_results[binary] = MachO.open(binary).dylib?
rescue MachO::MachOError
  @cached_dynamic_binary_results[binary] = false
end