func (t *tx) EndSegment() error {
	t.mtx.Lock()
	defer t.mtx.Unlock()

	if id, ok := t.ss.Pop(); ok {
		return t.Tracer.EndSegment(t.id, id)
	}
	return nil
}
func (t *tx) EndSegment() error {
	t.mtx.Lock()
	defer t.mtx.Unlock()

	if id, ok := t.ss.Pop(); ok {
		return t.Tracer.EndSegment(t.id, id)
	}
	return nil
}
func ( t * tx ) EndSegment ( ) error { t . mtx . Lock ( ) defer t . mtx . Unlock ( ) if id , ok := t . ss . Pop ( ) ; ok { return t . Tracer . EndSegment ( t . id , id ) } return nil }
// EndSegment ends the segment at the top of the stack.
EndSegment ends the segment at the top of the stack .