MCPcopy Create free account
hub / github.com/fabioz/PyDev.Debugger / _resolve_listing

Function _resolve_listing

pydevd_file_utils.py:144–167  ·  view source on GitHub ↗
(resolved, iter_parts_lowercase, cache=_listdir_cache)

Source from the content-addressed store, hash-verified

142
143
144def _resolve_listing(resolved, iter_parts_lowercase, cache=_listdir_cache):
145 while True: # Note: while True to make iterative and not recursive
146 try:
147 resolve_lowercase = next(iter_parts_lowercase) # must be lowercase already
148 except StopIteration:
149 return resolved
150
151 resolved_lower = resolved.lower()
152
153 resolved_joined = cache.get((resolved_lower, resolve_lowercase))
154 if resolved_joined is None:
155 dir_contents = cache.get(resolved_lower)
156 if dir_contents is None:
157 dir_contents = cache[resolved_lower] = os_listdir(resolved)
158
159 for filename in dir_contents:
160 if filename.lower() == resolve_lowercase:
161 resolved_joined = os.path.join(resolved, filename)
162 cache[(resolved_lower, resolve_lowercase)] = resolved_joined
163 break
164 else:
165 raise FileNotFoundError("Unable to find: %s in %s. Dir Contents: %s" % (resolve_lowercase, resolved, dir_contents))
166
167 resolved = resolved_joined
168
169
170def _resolve_listing_parts(resolved, parts_in_lowercase, filename):

Callers 1

_resolve_listing_partsFunction · 0.85

Calls 2

getMethod · 0.45
joinMethod · 0.45

Tested by

no test coverage detected