query.go
func (iter Enumerator) Reverse() Enumerator {
	cache := NewStack()
	for entry := range iter {
		cache.Push(entry)
	}

	retval := make(chan interface{})

	go func() {
		for !cache.IsEmpty() {
			val, _ := cache.Pop()
			retval <- val
		}
		close(retval)
	}()
	return retval
}
func (iter Enumerator) Reverse() Enumerator {
	cache := NewStack()
	for entry := range iter {
		cache.Push(entry)
	}

	retval := make(chan interface{})

	go func() {
		for !cache.IsEmpty() {
			val, _ := cache.Pop()
			retval <- val
		}
		close(retval)
	}()
	return retval
}
func ( iter Enumerator ) Reverse ( ) Enumerator { cache := NewStack ( ) for entry := range iter { cache . Push ( entry ) } retval := make ( chan interface { } ) go func ( ) { for ! cache . IsEmpty ( ) { val , _ := cache . Pop ( ) retval <- val } close ( retval ) } ( ) return retval }
// Reverse returns items in the opposite order it encountered them in.
Reverse returns items in the opposite order it encountered them in .