Module: Pod::PodGenerate::Patches::ProjectPatch::CachedPodGroup
- Defined in:
- lib/cocoapods-podgenerate/patches/project_patch.rb
Instance Method Summary collapse
-
#add_pod_group(pod_name, path, development = false, absolute = false) ⇒ PBXGroup
添加新 pod group 时清除缓存.
-
#pod_group(pod_name) ⇒ PBXGroup?
O(1) 查找 pod_group.
Instance Method Details
#add_pod_group(pod_name, path, development = false, absolute = false) ⇒ PBXGroup
添加新 pod group 时清除缓存
原始方法在 main_group 或 pods/development_pods group 下创建新的 PBXGroup。由于 project 结构发生了变化,我们需要清除缓存,让下一次 pod_group 调用重新构建。
61 62 63 64 65 |
# File 'lib/cocoapods-podgenerate/patches/project_patch.rb', line 61 def add_pod_group(pod_name, path, development = false, absolute = false) group = super @pod_group_cache = nil if defined?(@pod_group_cache) group end |
#pod_group(pod_name) ⇒ PBXGroup?
O(1) 查找 pod_group
首次调用时通过 build_pod_group_cache 构建 Hash 缓存,后续调用直接从缓存中查找。缓存键为 pod_name,值为 PBXGroup。
45 46 47 48 |
# File 'lib/cocoapods-podgenerate/patches/project_patch.rb', line 45 def pod_group(pod_name) @pod_group_cache ||= build_pod_group_cache @pod_group_cache[pod_name] end |