Method: CocoapodsMangle::Defines.classes

Defined in:
lib/cocoapods_mangle/defines.rb

.classes(binaries) ⇒ Array<String>

Get the classes defined in a list of binaries

Parameters:

  • binaries (Array<String>)

    The binaries containing symbols to be mangled

Returns:

  • (Array<String>)

    The classes defined in the binaries



24
25
26
27
28
29
30
31
32
33
# File 'lib/cocoapods_mangle/defines.rb', line 24

def self.classes(binaries)
  all_symbols = run_nm(binaries, '-gU')
  all_symbols = all_symbols.reject { |symbol| swift_symbol?(symbol) }

  class_symbols = all_symbols.select do |symbol|
    symbol[/OBJC_CLASS_\$_/]
  end
  class_symbols = class_symbols.map { |klass| klass.gsub(/^.*\$_/, '') }
  class_symbols.uniq
end