throttled_bucket.go
func NewThrottledBucket(
	opThrottle Throttle,
	egressThrottle Throttle,
	wrapped gcs.Bucket) (b gcs.Bucket) {
	b = &throttledBucket{
		opThrottle:     opThrottle,
		egressThrottle: egressThrottle,
		wrapped:        wrapped,
	}

	return
}
func NewThrottledBucket(
	opThrottle Throttle,
	egressThrottle Throttle,
	wrapped gcs.Bucket) (b gcs.Bucket) {
	b = &throttledBucket{
		opThrottle:     opThrottle,
		egressThrottle: egressThrottle,
		wrapped:        wrapped,
	}

	return
}
func NewThrottledBucket ( opThrottle Throttle , egressThrottle Throttle , wrapped gcs . Bucket ) ( b gcs . Bucket ) { b = & throttledBucket { opThrottle : opThrottle , egressThrottle : egressThrottle , wrapped : wrapped , } return }
// Create a bucket that limits the rate at which it calls the wrapped bucket
// using opThrottle, and limits the bandwidth with which it reads from the
// wrapped bucket using egressThrottle.
Create a bucket that limits the rate at which it calls the wrapped bucket using opThrottle and limits the bandwidth with which it reads from the wrapped bucket using egressThrottle .