code: func (svc *S3Accessor) GetAll(ctx context.Context,
  	ctor NewObjectConstructor) ([]interface{}, error) {
  
  	listObjectInput := &s3.ListObjectsInput{
  		Bucket: aws.String(svc.s3BucketName()),
  	}
  
  	listObjectResult, listObjectResultErr := svc.
  		s3Svc(ctx).
  		ListObjectsWithContext(ctx, listObjectInput)
  
  	if listObjectResultErr != nil {
  		return nil, listObjectResultErr
  	}
  	allObjects := make([]interface{}, 0)
  	for _, eachObject := range listObjectResult.Contents {
  		objectInstance := ctor()
  		entryEntryErr := svc.Get(ctx, *eachObject.Key, objectInstance)
  		if entryEntryErr != nil {
  			return nil, entryEntryErr
  		}
  		allObjects = append(allObjects, objectInstance)
  	}
  	return allObjects, nil
  }
docs: // GetAll handles returning all of the items