code: func isNil(object interface{}) bool {
  	if object == nil {
  		return true
  	}
  
  	value := reflect.ValueOf(object)
  	kind := value.Kind()
  	isNilableKind := containsKind(
  		[]reflect.Kind{
  			reflect.Chan, reflect.Func,
  			reflect.Interface, reflect.Map,
  			reflect.Ptr, reflect.Slice},
  		kind)
  
  	if isNilableKind && value.IsNil() {
  		return true
  	}
  
  	return false
  }
docs: // isNil checks if a specified object is nil or not, without Failing.