Class: Xcodeproj::Project::Object::PBXNativeTarget

Inherits:
Object
  • Object
show all
Defined in:
lib/xccache/xcodeproj/target.rb

Instance Method Summary collapse

Instance Method Details

#add_pkg_product_dependency(name) ⇒ Object



21
22
23
24
25
26
# File 'lib/xccache/xcodeproj/target.rb', line 21

def add_pkg_product_dependency(name)
  Log.info("(+) Add dependency #{name.blue} to target #{display_name.bold}")
  pkg_name, product_name = name.split("/")
  pkg = project.get_pkg(pkg_name)
  pkg_product_dependencies << pkg.create_target_dependency_ref(product_name).product_ref
end

#add_xccache_product_dependencyObject



28
29
30
# File 'lib/xccache/xcodeproj/target.rb', line 28

def add_xccache_product_dependency
  add_pkg_product_dependency("proxy/#{name}.xccache")
end

#has_pkg_product_dependency?(name) ⇒ Boolean

Returns:

  • (Boolean)


17
18
19
# File 'lib/xccache/xcodeproj/target.rb', line 17

def has_pkg_product_dependency?(name)
  pkg_product_dependencies.any? { |d| d.full_name == name }
end

#has_xccache_product_dependency?Boolean

Returns:

  • (Boolean)


13
14
15
# File 'lib/xccache/xcodeproj/target.rb', line 13

def has_xccache_product_dependency?
  pkg_product_dependencies.any? { |d| d.pkg&.xccache_pkg? }
end

#non_xccache_pkg_product_dependenciesObject



9
10
11
# File 'lib/xccache/xcodeproj/target.rb', line 9

def non_xccache_pkg_product_dependencies
  pkg_product_dependencies.reject { |d| d.pkg&.xccache_pkg? }
end

#remove_pkg_product_dependencies(&block) ⇒ Object



36
37
38
# File 'lib/xccache/xcodeproj/target.rb', line 36

def remove_pkg_product_dependencies(&block)
  package_product_dependencies.select(&block).each(&:remove_alongside_related)
end

#remove_xccache_product_dependenciesObject



32
33
34
# File 'lib/xccache/xcodeproj/target.rb', line 32

def remove_xccache_product_dependencies
  remove_pkg_product_dependencies { |d| d.pkg&.xccache_pkg? }
end