github.com/ydb-platform/ydb-go-sdk/v3@v3.89.2/internal/xslices/split.go (about)

     1  package xslices
     2  
     3  func Split[T any](x []T, isOk func(t T) bool) (good, bad []T) {
     4  	good = make([]T, 0, len(x))
     5  	bad = make([]T, 0, len(x))
     6  
     7  	for i := 0; i < len(x); i++ {
     8  		if isOk(x[i]) {
     9  			good = append(good, x[i])
    10  		} else {
    11  			bad = append(bad, x[i])
    12  		}
    13  	}
    14  
    15  	return good, bad
    16  }