Skip to content

Commit

Permalink
fix: else, deindent
Browse files Browse the repository at this point in the history
  • Loading branch information
antazoey committed Feb 19, 2025
1 parent 2d56e46 commit ef606dd
Showing 1 changed file with 34 additions and 35 deletions.
69 changes: 34 additions & 35 deletions src/ape/managers/_contractscache.py
Original file line number Diff line number Diff line change
Expand Up @@ -561,42 +561,41 @@ def get(

return contract_type

else:
# Contract is not cached yet. Check broader sources, such as an explorer.
if not proxy_info and detect_proxy:
# Proxy info not provided. Attempt to detect.
if not (proxy_info := self.proxy_infos[address_key]):
if proxy_info := self.provider.network.ecosystem.get_proxy_info(address_key):
self.proxy_infos[address_key] = proxy_info

if proxy_info:
# Contract is a proxy (either was detected or provided).
implementation_contract_type = self.get(proxy_info.target, default=default)
proxy_contract_type = self.get(
address_key,
fetch_from_explorer=fetch_from_explorer,
proxy_info=proxy_info,
detect_proxy=False,
# Contract is not cached yet. Check broader sources, such as an explorer.
if not proxy_info and detect_proxy:
# Proxy info not provided. Attempt to detect.
if not (proxy_info := self.proxy_infos[address_key]):
if proxy_info := self.provider.network.ecosystem.get_proxy_info(address_key):
self.proxy_infos[address_key] = proxy_info

if proxy_info:
# Contract is a proxy (either was detected or provided).
implementation_contract_type = self.get(proxy_info.target, default=default)
proxy_contract_type = self.get(
address_key,
fetch_from_explorer=fetch_from_explorer,
proxy_info=proxy_info,
detect_proxy=False,
)
if proxy_contract_type is not None and implementation_contract_type is not None:
combined_contract = _get_combined_contract_type(
proxy_contract_type, proxy_info, implementation_contract_type
)
if proxy_contract_type is not None and implementation_contract_type is not None:
combined_contract = _get_combined_contract_type(
proxy_contract_type, proxy_info, implementation_contract_type
)
self.contract_types[address_key] = combined_contract
return combined_contract

elif implementation_contract_type is not None:
contract_type_to_cache = implementation_contract_type
self.contract_types[address_key] = implementation_contract_type
return contract_type_to_cache

elif proxy_contract_type is not None:
self.contract_types[address_key] = proxy_contract_type
return proxy_contract_type

# Also gets cached to disk for faster lookup next time.
if fetch_from_explorer:
contract_type = self._get_contract_type_from_explorer(address_key)
self.contract_types[address_key] = combined_contract
return combined_contract

elif implementation_contract_type is not None:
contract_type_to_cache = implementation_contract_type
self.contract_types[address_key] = implementation_contract_type
return contract_type_to_cache

elif proxy_contract_type is not None:
self.contract_types[address_key] = proxy_contract_type
return proxy_contract_type

# Also gets cached to disk for faster lookup next time.
if fetch_from_explorer:
contract_type = self._get_contract_type_from_explorer(address_key)

# Cache locally for faster in-session look-up.
if contract_type:
Expand Down

0 comments on commit ef606dd

Please sign in to comment.