MCPcopy Create free account
hub / github.com/numpy/numpy / sortvarnames

Function sortvarnames

numpy/f2py/crackfortran.py:2160–2191  ·  view source on GitHub ↗
(vars)

Source from the content-addressed store, hash-verified

2158
2159
2160def sortvarnames(vars):
2161 indep = []
2162 dep = []
2163 for v in list(vars.keys()):
2164 if 'depend' in vars[v] and vars[v]['depend']:
2165 dep.append(v)
2166 else:
2167 indep.append(v)
2168 n = len(dep)
2169 i = 0
2170 while dep: # XXX: How to catch dependence cycles correctly?
2171 v = dep[0]
2172 fl = 0
2173 for w in dep[1:]:
2174 if w in vars[v]['depend']:
2175 fl = 1
2176 break
2177 if fl:
2178 dep = dep[1:] + [v]
2179 i = i + 1
2180 if i > n:
2181 errmess('sortvarnames: failed to compute dependencies because'
2182 ' of cyclic dependencies between '
2183 + ', '.join(dep) + '\n')
2184 indep = indep + dep
2185 break
2186 else:
2187 indep.append(v)
2188 dep = dep[1:]
2189 n = len(dep)
2190 i = 0
2191 return indep
2192
2193
2194def analyzecommon(block):

Callers 1

postcrackFunction · 0.85

Calls 2

keysMethod · 0.80
joinMethod · 0.45

Tested by

no test coverage detected