parent is a field not a function
support ECheckType expressions in factory like factory( ( MyServiceImpl.new : MyService) ) to register implementations as interfaces/typedefs