diff options
Diffstat (limited to 'src/mongo/gotools/src/github.com/mongodb/mongo-tools/legacy/util/bool.go')
-rw-r--r-- | src/mongo/gotools/src/github.com/mongodb/mongo-tools/legacy/util/bool.go | 38 |
1 files changed, 0 insertions, 38 deletions
diff --git a/src/mongo/gotools/src/github.com/mongodb/mongo-tools/legacy/util/bool.go b/src/mongo/gotools/src/github.com/mongodb/mongo-tools/legacy/util/bool.go deleted file mode 100644 index fced8f28014..00000000000 --- a/src/mongo/gotools/src/github.com/mongodb/mongo-tools/legacy/util/bool.go +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (C) MongoDB, Inc. 2014-present. -// -// Licensed under the Apache License, Version 2.0 (the "License"); you may -// not use this file except in compliance with the License. You may obtain -// a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 - -package util - -import ( - "gopkg.in/mgo.v2/bson" - "reflect" -) - -// IsTruthy returns true for values the server will interpret as "true". -// True values include {}, [], "", true, and any numbers != 0 -func IsTruthy(val interface{}) bool { - if val == nil { - return false - } - if val == bson.Undefined { - return false - } - - v := reflect.ValueOf(val) - switch v.Kind() { - case reflect.Map, reflect.Slice, reflect.Array, reflect.String, reflect.Struct: - return true - default: - z := reflect.Zero(v.Type()) - return v.Interface() != z.Interface() - } -} - -// IsFalsy returns true for values the server will interpret as "false". -// False values include numbers == 0, false, and nil -func IsFalsy(val interface{}) bool { - return !IsTruthy(val) -} |