161
}
162
163
>
func (s *SliceImpl) MergeWithSlice(slice Slice) []Slice {
slice.go
164
>
if s.scope.Range.InclusiveMin.CompareTo(slice.Scope().Range.InclusiveMin) > 0 {
165
return slice.MergeWithSlice(s)
166
}
167
168
>
if !s.CanMergeWithSlice(slice) {
slice.go
169
panic(fmt.Sprintf("Unable to merge queue slice having scope %v with slice having scope %v", s.scope, slice.Scope()))
170
}
171
172
>
incomingSlice, ok := slice.(*SliceImpl)
slice.go
173
>
if !ok {
174
panic(fmt.Sprintf("Unable to merge queue slice of type %T with type %T", s, slice))
175
}
176
177
>
if s.scope.CanMergeByRange(incomingSlice.scope) {
slice.go
178
return []Slice{s.mergeByRange(incomingSlice)}
179
}