Enum bson::Bson[][src]

pub enum Bson {
Show 21 variants Double(f64), String(String), Array(Array), Document(Document), Boolean(bool), Null, RegularExpression(Regex), JavaScriptCode(String), JavaScriptCodeWithScope(JavaScriptCodeWithScope), Int32(i32), Int64(i64), Timestamp(Timestamp), Binary(Binary), ObjectId(ObjectId), DateTime(DateTime), Symbol(String), Decimal128(Decimal128), Undefined, MaxKey, MinKey, DbPointer(DbPointer),
}
Expand description

Possible BSON value types.

Variants

Double

64-bit binary floating point

Tuple Fields of Double

0: f64
String

UTF-8 string

Tuple Fields of String

0: String
Array

Array

Tuple Fields of Array

0: Array
Document

Embedded document

Tuple Fields of Document

0: Document
Boolean

Boolean value

Tuple Fields of Boolean

0: bool
Null

Null value

RegularExpression

Regular expression

Tuple Fields of RegularExpression

0: Regex
JavaScriptCode

JavaScript code

Tuple Fields of JavaScriptCode

0: String
JavaScriptCodeWithScope

JavaScript code w/ scope

Tuple Fields of JavaScriptCodeWithScope

0: JavaScriptCodeWithScope
Int32

32-bit signed integer

Tuple Fields of Int32

0: i32
Int64

64-bit signed integer

Tuple Fields of Int64

0: i64
Timestamp

Timestamp

Tuple Fields of Timestamp

0: Timestamp
Binary

Binary data

Tuple Fields of Binary

0: Binary
ObjectId

Tuple Fields of ObjectId

0: ObjectId
DateTime

UTC datetime

Tuple Fields of DateTime

0: DateTime
Symbol

Symbol (Deprecated)

Tuple Fields of Symbol

0: String
Decimal128

Tuple Fields of Decimal128

0: Decimal128
Undefined

Undefined value (Deprecated)

MaxKey

Max key

MinKey

Min key

DbPointer

DBPointer (Deprecated)

Tuple Fields of DbPointer

0: DbPointer

Implementations

Converts the Bson value into its relaxed extended JSON representation.

Note: If this method is called on a case which contains a Decimal128 value, it will panic.

Converts the Bson value into its canonical extended JSON representation.

Note: extended json encoding for Decimal128 values is not supported. If this method is called on a case which contains a Decimal128 value, it will panic.

Get the ElementType of this value.

Value helpers

If Bson is Double, return its value as an f64. Returns None otherwise

If Bson is String, return its value as a &str. Returns None otherwise

If Bson is String, return a mutable reference to its value as a str. Returns None otherwise

If Bson is Array, return its value. Returns None otherwise

If Bson is Array, return a mutable reference to its value. Returns None otherwise

If Bson is Document, return its value. Returns None otherwise

If Bson is Document, return a mutable reference to its value. Returns None otherwise

If Bson is Bool, return its value. Returns None otherwise

If Bson is I32, return its value. Returns None otherwise

If Bson is I64, return its value. Returns None otherwise

If Bson is Objectid, return its value. Returns None otherwise

If Bson is Objectid, return a mutable reference to its value. Returns None otherwise

If Bson is DateTime, return its value. Returns None otherwise

If Bson is DateTime, return a mutable reference to its value. Returns None otherwise

If Bson is Symbol, return its value. Returns None otherwise

If Bson is Symbol, return a mutable reference to its value. Returns None otherwise

If Bson is Timestamp, return its value. Returns None otherwise

If Bson is Null, return its value. Returns None otherwise

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Deserialize this value from the given Serde deserializer. Read more

Formats the value using the given formatter. Read more

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

This will create the relaxed Extended JSON v2 representation of the provided Bson.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Performs the conversion.

Examples

use std::iter::FromIterator;
use bson::Bson;

let x: Bson = Bson::from_iter(vec!["lorem", "ipsum", "dolor"]);
// or
let x: Bson = vec!["lorem", "ipsum", "dolor"].into_iter().collect();

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Serialize this value into the given Serde serializer. Read more

This converts from the input JSON object as if it were MongoDB Extended JSON v2.

The type returned in the event of a conversion error.

Performs the conversion.

This converts from the input JSON as if it were MongoDB Extended JSON v2.

The type returned in the event of a conversion error.

Performs the conversion.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

Converts the given value to a String. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.