summaryrefslogtreecommitdiff
path: root/src/mongo/gotools/src/github.com/mongodb/mongo-tools/vendor/go.mongodb.org/mongo-driver/x/bsonx/constructor.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/gotools/src/github.com/mongodb/mongo-tools/vendor/go.mongodb.org/mongo-driver/x/bsonx/constructor.go')
-rw-r--r--src/mongo/gotools/src/github.com/mongodb/mongo-tools/vendor/go.mongodb.org/mongo-driver/x/bsonx/constructor.go166
1 files changed, 0 insertions, 166 deletions
diff --git a/src/mongo/gotools/src/github.com/mongodb/mongo-tools/vendor/go.mongodb.org/mongo-driver/x/bsonx/constructor.go b/src/mongo/gotools/src/github.com/mongodb/mongo-tools/vendor/go.mongodb.org/mongo-driver/x/bsonx/constructor.go
deleted file mode 100644
index a8be859ddf4..00000000000
--- a/src/mongo/gotools/src/github.com/mongodb/mongo-tools/vendor/go.mongodb.org/mongo-driver/x/bsonx/constructor.go
+++ /dev/null
@@ -1,166 +0,0 @@
-// Copyright (C) MongoDB, Inc. 2017-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 bsonx
-
-import (
- "encoding/binary"
- "math"
- "time"
-
- "go.mongodb.org/mongo-driver/bson/bsontype"
- "go.mongodb.org/mongo-driver/bson/primitive"
-)
-
-// IDoc is the interface implemented by Doc and MDoc. It allows either of these types to be provided
-// to the Document function to create a Value.
-type IDoc interface {
- idoc()
-}
-
-// Double constructs a BSON double Value.
-func Double(f64 float64) Val {
- v := Val{t: bsontype.Double}
- binary.LittleEndian.PutUint64(v.bootstrap[0:8], math.Float64bits(f64))
- return v
-}
-
-// String constructs a BSON string Value.
-func String(str string) Val { return Val{t: bsontype.String}.writestring(str) }
-
-// Document constructs a Value from the given IDoc. If nil is provided, a BSON Null value will be
-// returned.
-func Document(doc IDoc) Val {
- var v Val
- switch tt := doc.(type) {
- case Doc:
- if tt == nil {
- v.t = bsontype.Null
- break
- }
- v.t = bsontype.EmbeddedDocument
- v.primitive = tt
- case MDoc:
- if tt == nil {
- v.t = bsontype.Null
- break
- }
- v.t = bsontype.EmbeddedDocument
- v.primitive = tt
- default:
- v.t = bsontype.Null
- }
- return v
-}
-
-// Array constructs a Value from arr. If arr is nil, a BSON Null value is returned.
-func Array(arr Arr) Val {
- if arr == nil {
- return Val{t: bsontype.Null}
- }
- return Val{t: bsontype.Array, primitive: arr}
-}
-
-// Binary constructs a BSON binary Value.
-func Binary(subtype byte, data []byte) Val {
- return Val{t: bsontype.Binary, primitive: primitive.Binary{Subtype: subtype, Data: data}}
-}
-
-// Undefined constructs a BSON binary Value.
-func Undefined() Val { return Val{t: bsontype.Undefined} }
-
-// ObjectID constructs a BSON objectid Value.
-func ObjectID(oid primitive.ObjectID) Val {
- v := Val{t: bsontype.ObjectID}
- copy(v.bootstrap[0:12], oid[:])
- return v
-}
-
-// Boolean constructs a BSON boolean Value.
-func Boolean(b bool) Val {
- v := Val{t: bsontype.Boolean}
- if b {
- v.bootstrap[0] = 0x01
- }
- return v
-}
-
-// DateTime constructs a BSON datetime Value.
-func DateTime(dt int64) Val { return Val{t: bsontype.DateTime}.writei64(dt) }
-
-// Time constructs a BSON datetime Value.
-func Time(t time.Time) Val {
- return Val{t: bsontype.DateTime}.writei64(t.Unix()*1e3 + int64(t.Nanosecond()/1e6))
-}
-
-// Null constructs a BSON binary Value.
-func Null() Val { return Val{t: bsontype.Null} }
-
-// Regex constructs a BSON regex Value.
-func Regex(pattern, options string) Val {
- regex := primitive.Regex{Pattern: pattern, Options: options}
- return Val{t: bsontype.Regex, primitive: regex}
-}
-
-// DBPointer constructs a BSON dbpointer Value.
-func DBPointer(ns string, ptr primitive.ObjectID) Val {
- dbptr := primitive.DBPointer{DB: ns, Pointer: ptr}
- return Val{t: bsontype.DBPointer, primitive: dbptr}
-}
-
-// JavaScript constructs a BSON javascript Value.
-func JavaScript(js string) Val {
- return Val{t: bsontype.JavaScript}.writestring(js)
-}
-
-// Symbol constructs a BSON symbol Value.
-func Symbol(symbol string) Val {
- return Val{t: bsontype.Symbol}.writestring(symbol)
-}
-
-// CodeWithScope constructs a BSON code with scope Value.
-func CodeWithScope(code string, scope IDoc) Val {
- cws := primitive.CodeWithScope{Code: primitive.JavaScript(code), Scope: scope}
- return Val{t: bsontype.CodeWithScope, primitive: cws}
-}
-
-// Int32 constructs a BSON int32 Value.
-func Int32(i32 int32) Val {
- v := Val{t: bsontype.Int32}
- v.bootstrap[0] = byte(i32)
- v.bootstrap[1] = byte(i32 >> 8)
- v.bootstrap[2] = byte(i32 >> 16)
- v.bootstrap[3] = byte(i32 >> 24)
- return v
-}
-
-// Timestamp constructs a BSON timestamp Value.
-func Timestamp(t, i uint32) Val {
- v := Val{t: bsontype.Timestamp}
- v.bootstrap[0] = byte(i)
- v.bootstrap[1] = byte(i >> 8)
- v.bootstrap[2] = byte(i >> 16)
- v.bootstrap[3] = byte(i >> 24)
- v.bootstrap[4] = byte(t)
- v.bootstrap[5] = byte(t >> 8)
- v.bootstrap[6] = byte(t >> 16)
- v.bootstrap[7] = byte(t >> 24)
- return v
-}
-
-// Int64 constructs a BSON int64 Value.
-func Int64(i64 int64) Val { return Val{t: bsontype.Int64}.writei64(i64) }
-
-// Decimal128 constructs a BSON decimal128 Value.
-func Decimal128(d128 primitive.Decimal128) Val {
- return Val{t: bsontype.Decimal128, primitive: d128}
-}
-
-// MinKey constructs a BSON minkey Value.
-func MinKey() Val { return Val{t: bsontype.MinKey} }
-
-// MaxKey constructs a BSON maxkey Value.
-func MaxKey() Val { return Val{t: bsontype.MaxKey} }