42 lines
645 B
Go
42 lines
645 B
Go
|
//
|
||
|
// slice_helper.go
|
||
|
// Copyright (C) 2022 tiglog <me@tiglog.com>
|
||
|
//
|
||
|
// Distributed under terms of the MIT license.
|
||
|
//
|
||
|
|
||
|
package helper
|
||
|
|
||
|
func InStringSlice(need string, haystack []string) bool {
|
||
|
for _, e := range haystack {
|
||
|
if e == need {
|
||
|
return true
|
||
|
}
|
||
|
}
|
||
|
return false
|
||
|
}
|
||
|
|
||
|
func InIntSlice(need int, haystack []int) bool {
|
||
|
for _, e := range haystack {
|
||
|
if e == need {
|
||
|
return true
|
||
|
}
|
||
|
}
|
||
|
return false
|
||
|
}
|
||
|
|
||
|
func IsAnySlice(v interface{}) bool {
|
||
|
_, ok := v.([]interface{})
|
||
|
return ok
|
||
|
}
|
||
|
|
||
|
func IsStringSlice(v interface{}) bool {
|
||
|
_, ok := v.([]string)
|
||
|
return ok
|
||
|
}
|
||
|
|
||
|
func IsIntSlice(v interface{}) bool {
|
||
|
_, ok := v.([]int)
|
||
|
return ok
|
||
|
}
|