Closed tombulled closed 1 year ago
Implement .enums.ParameterType.from_kind
Implement Resolvers.get_resolver
to get the most appropriate resolver
api.get_params
shouldn't care about PS
/RT
Re-implement use of arguments
library?
Remove last Param
wrapper overload, it's invalid
Make a ParameterManager
ABC, and a concrete ParamManager
Make get_params
complain if a spec doesn't have a listed resolver
Parameter inference will likely need access to more information? (Or should it just use instance attributes?)
Done
Complain if inferred parameter has no associated resolver
Make specifying a resolver optional. The user may only ever want to use get_params
, not get_arguments
. E.g:
R = TypeVar("R", bound=Callable)
class Resolvers(Register[Type[ParameterSpecificafion], Optional[R]]):
pass
class MyManager(ParameterManager):
resolvers = {Param: None}
Chaining on from this, ParameterManager.resolve
is currently an abstractmethod
, however the user may have no desire to implement one. Perhaps it should throw an UnresolvableParameter
exception by default instead.
Make get_params
complain if a spec doesn't have a listed resolver
Implement
.models.BoundArguments