code: def call_fn(self, what, *args, **kwargs):
          
          logger.debug('f_{0}:{1}{2}({3})'.format(
              self.call_stack_level,
              ' ' * 4 * self.call_stack_level,
              what,
              arguments_as_string(args, kwargs)))
          port, fn_name = self._what(what)
          if port not in self['_initialized_ports']:
              self._call_fn(port, 'init_adapter')
              self['_initialized_ports'].append(port)
          return self._call_fn(port, fn_name, *args, **kwargs)
docs: Lazy call init_adapter then call the function