def _make_target_adaptor(base_class, target_type):
  """Look up the default source globs for the type, and apply them to parsing through the engine."""
  if not target_type.supports_default_sources() or target_type.default_sources_globs is None:
    return base_class

  globs = _tuplify(target_type.default_sources_globs)
  excludes = _tuplify(target_type.default_sources_exclude_globs)

  class GlobsHandlingTargetAdaptor(base_class):
    @property
    def default_sources_globs(self):
      if globs is None:
        return super(GlobsHandlingTargetAdaptor, self).default_sources_globs
      else:
        return globs

    @property
    def default_sources_exclude_globs(self):
      if excludes is None:
        return super(GlobsHandlingTargetAdaptor, self).default_sources_exclude_globs
      else:
        return excludes

  return GlobsHandlingTargetAdaptor
Look up the default source globs for the type, and apply them to parsing through the engine.