Remove unused defaults

This commit is contained in:
2025-07-19 21:13:40 +03:00
parent 69def6e74c
commit eae2cd9a4b
3 changed files with 9 additions and 9 deletions

View File

@@ -70,7 +70,7 @@ class GraphWalker:
if not dead_end:
for opt, _ in point.opt_args:
for opt in point.opt_args:
subg = cls.generate_callgraph_singletype(injectors,
from_types,
opt,

View File

@@ -18,7 +18,7 @@ class ConversionPoint:
fn: Callable
injects: type
requires: tuple[type, ...]
opt_args: tuple[tuple[type, object], ...]
opt_args: tuple[type, ...]
def __hash__(self):
return hash((self.fn, self.injects, self.requires))
@@ -67,15 +67,15 @@ class ConversionPoint:
orig_argtypes = []
for argname, argtype in orig_args:
orig_argtypes.append((argtype, argname in defaults.keys(), defaults.get(argname)))
orig_argtypes.append((argtype, argname in defaults.keys()))
default_map: list[tuple[bool, object]] = []
for argtype, has_default, default in orig_argtypes:
default_map: list[bool] = []
for argtype, has_default in orig_argtypes:
if isinstance(argtype, types.UnionType) or get_origin(argtype) is Union:
u_types = list(get_args(argtype)) + [argtype]
else:
u_types = [argtype]
default_map.append((has_default, default))
default_map.append(has_default)
argtypes.append(u_types)
argtype_combinations = all_combinations(argtypes)
@@ -83,9 +83,9 @@ class ConversionPoint:
for argtype_combination in argtype_combinations:
req_args = []
opt_args = []
for argt, (has_default, default) in zip(argtype_combination, default_map):
for argt, has_default in zip(argtype_combination, default_map):
if has_default:
opt_args.append((argt, default))
opt_args.append(argt)
else:
req_args.append(argt)
ret.append(ConversionPoint(func, rettype, tuple(req_args), tuple(opt_args)))

View File

@@ -36,7 +36,7 @@ class ConversionRenderData:
argname = argmap[arg_id][0]
fnargs.append((argname, hashname(argtype)))
for arg_id, (argtype, _) in enumerate(inj.opt_args, len(inj.requires)):
for arg_id, argtype in enumerate(inj.opt_args, len(inj.requires)):
argname = argmap[arg_id][0]
if argtype in provided_types:
fnargs.append((argname, hashname(argtype)))