This PR makes it easier to work with manually registering services by reducing amount of boilerplate needed to do so.
Ensure class_ann is present before auto configuring tags and/or resolving generics
TODO: I think we should refactor things to decouple the annotations from the service definitions. This way register_servicesONLY uses them to populate the definitions and things can still be manually wired up. I.e. it makes the annotations specific to the auto registration pass, and not a requirement for the whole process
Create new NormalizeDefinitions pass that ensures required keys are present and with proper defaults if not specified
Makes it so you do not have to provide every property when manually registering service
Breaks out the alias and parameter processes from register_services pass into their own passes
Makes it so aliases can be handled via manual registration via including the array of aliases within the definition and not just on the annotation
Allows manually wired up parameters to have their extra information populated (type, idx, etc) while still retaining the previous value
Refactor factory resolution to include non "new" class methods
This PR makes it easier to work with manually registering services by reducing amount of boilerplate needed to do so.
class_ann
is present before auto configuring tags and/or resolving genericsregister_services
ONLY uses them to populate the definitions and things can still be manually wired up. I.e. it makes the annotations specific to the auto registration pass, and not a requirement for the whole processNormalizeDefinitions
pass that ensures required keys are present and with proper defaults if not specifiedregister_services
pass into their own passes