32 lines
656 B
Go
32 lines
656 B
Go
package util
|
|
|
|
func IntInSlice(needle int, haystack[]int) (exists bool, index int) {
|
|
exists = false
|
|
index = -1
|
|
for i := 0; i < len(haystack); i++ {
|
|
if haystack[i] == needle {
|
|
return true, i
|
|
}
|
|
}
|
|
return exists, index
|
|
}
|
|
|
|
//left here for historical reasons
|
|
//func InArray(val interface{}, array interface{}) (exists bool, index int) {
|
|
// exists = false
|
|
// index = -1
|
|
//
|
|
// switch reflect.TypeOf(array).Kind() {
|
|
// case reflect.Slice:
|
|
// s := reflect.ValueOf(array)
|
|
//
|
|
// for i := 0; i < s.Len(); i++ {
|
|
// if reflect.DeepEqual(val, s.Index(i).Interface()) == true {
|
|
// index = i
|
|
// exists = true
|
|
// return
|
|
// }
|
|
// }
|
|
// }
|
|
// return
|
|
//} |