def METHOD_NAME(
    cls,
    *,
    call: _DependentCallable[R],
    parameterless: Optional[Iterable[Any]] = None,
    allow_types: Iterable[Type[Param]],
) -> "Dependent[R]":
    allow_types = tuple(allow_types)
    params = cls.parse_params(call, allow_types)
    parameterless_params = (
        ()
        if parameterless is None
        else cls.parse_parameterless(tuple(parameterless), allow_types)
    )
    return cls(call, params, parameterless_params)