type GCPolicy … type GC … type SourcesReadyProvider … type realContainerGC … // NewContainerGC creates a new instance of GC with the specified policy. func NewContainerGC(runtime Runtime, policy GCPolicy, sourcesReadyProvider SourcesReadyProvider) (GC, error) { … } func (cgc *realContainerGC) GarbageCollect(ctx context.Context) error { … } func (cgc *realContainerGC) DeleteAllUnusedContainers(ctx context.Context) error { … }