Method: CocoapodsMangle::Defines.category_selectors
- Defined in:
- lib/cocoapods_mangle/defines.rb
.category_selectors(binaries, classes) ⇒ Array<String>
Note:
Selectors on classes which are being mangled will not be mangled
Get the category selectors defined in a list of binaries
65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'lib/cocoapods_mangle/defines.rb', line 65 def self.category_selectors(binaries, classes) symbols = run_nm(binaries, '-U') selectors = symbols.select { |selector| selector[/ t [-|+]\[[^ ]*\([^ ]*\) [^ ]*\]/] } selectors = selectors.reject do |selector| class_name = selector[/[-|+]\[(.*?)\(/m, 1] classes.include? class_name end selectors = selectors.map do |selector| cleaned = selector.split(']').first + ']' cleaned[/[^ ]*\]\z/][0...-1] end selectors = selectors.map { |selector| selector.split(':').first } selectors.uniq end |