func (s *Stack) equal(r *Stack) bool {
	if len(s.Calls) != len(r.Calls) || s.Elided != r.Elided {
		return false
	}
	for i := range s.Calls {
		if !s.Calls[i].equal(&r.Calls[i]) {
			return false
		}
	}
	return true
}
func (s *Stack) equal(r *Stack) bool {
	if len(s.Calls) != len(r.Calls) || s.Elided != r.Elided {
		return false
	}
	for i := range s.Calls {
		if !s.Calls[i].equal(&r.Calls[i]) {
			return false
		}
	}
	return true
}
func ( s * Stack ) equal ( r * Stack ) bool { if len ( s . Calls ) != len ( r . Calls ) || s . Elided != r . Elided { return false } for i := range s . Calls { if ! s . Calls [ i ] . equal ( & r . Calls [ i ] ) { return false } } return true }
// equal returns true on if both call stacks are exactly equal.
equal returns true on if both call stacks are exactly equal .