[][src]Struct bson::document::Document

pub struct Document { /* fields omitted */ }

A BSON document represented as an associative HashMap with insertion ordering.

Implementations

impl Document[src]

pub fn new() -> Document[src]

Creates a new empty Document.

pub fn iter(&self) -> DocumentIterator[src]

Gets an iterator over the entries of the map.

pub fn clear(&mut self)[src]

Clears the document, removing all values.

pub fn get(&self, key: &str) -> Option<&Bson>[src]

Returns a reference to the Bson corresponding to the key.

pub fn get_mut(&mut self, key: &str) -> Option<&mut Bson>[src]

Gets a mutable reference to the Bson corresponding to the key

pub fn get_f64(&self, key: &str) -> ValueAccessResult<f64>[src]

Get a floating point value for this key if it exists and has the correct type.

pub fn get_f64_mut(&mut self, key: &str) -> ValueAccessResult<&mut f64>[src]

Get a mutable reference to a floating point value for this key if it exists and has the correct type.

pub fn get_decimal128(&self, key: &str) -> ValueAccessResult<&Decimal128>[src]

Get a reference to a Decimal128 value for key, if it exists.

pub fn get_decimal128_mut(
    &mut self,
    key: &str
) -> ValueAccessResult<&mut Decimal128>
[src]

Get a mutable reference to a Decimal128 value for key, if it exists.

pub fn get_str(&self, key: &str) -> ValueAccessResult<&str>[src]

Get a string slice this key if it exists and has the correct type.

pub fn get_str_mut(&mut self, key: &str) -> ValueAccessResult<&mut str>[src]

Get a mutable string slice this key if it exists and has the correct type.

pub fn get_array(&self, key: &str) -> ValueAccessResult<&Array>[src]

Get a reference to an array for this key if it exists and has the correct type.

pub fn get_array_mut(&mut self, key: &str) -> ValueAccessResult<&mut Array>[src]

Get a mutable reference to an array for this key if it exists and has the correct type.

pub fn get_document(&self, key: &str) -> ValueAccessResult<&Document>[src]

Get a reference to a document for this key if it exists and has the correct type.

pub fn get_document_mut(
    &mut self,
    key: &str
) -> ValueAccessResult<&mut Document>
[src]

Get a mutable reference to a document for this key if it exists and has the correct type.

pub fn get_bool(&self, key: &str) -> ValueAccessResult<bool>[src]

Get a bool value for this key if it exists and has the correct type.

pub fn get_bool_mut(&mut self, key: &str) -> ValueAccessResult<&mut bool>[src]

Get a mutable reference to a bool value for this key if it exists and has the correct type.

pub fn is_null(&self, key: &str) -> bool[src]

Returns wether this key has a null value

pub fn get_i32(&self, key: &str) -> ValueAccessResult<i32>[src]

Get an i32 value for this key if it exists and has the correct type.

pub fn get_i32_mut(&mut self, key: &str) -> ValueAccessResult<&mut i32>[src]

Get a mutable reference to an i32 value for this key if it exists and has the correct type.

pub fn get_i64(&self, key: &str) -> ValueAccessResult<i64>[src]

Get an i64 value for this key if it exists and has the correct type.

pub fn get_i64_mut(&mut self, key: &str) -> ValueAccessResult<&mut i64>[src]

Get a mutable reference to an i64 value for this key if it exists and has the correct type.

pub fn get_timestamp(&self, key: &str) -> ValueAccessResult<Timestamp>[src]

Get a time stamp value for this key if it exists and has the correct type.

pub fn get_timestamp_mut(
    &mut self,
    key: &str
) -> ValueAccessResult<&mut Timestamp>
[src]

Get a mutable reference to a time stamp value for this key if it exists and has the correct type.

pub fn get_binary_generic(&self, key: &str) -> ValueAccessResult<&Vec<u8>>[src]

Get a reference to a generic binary value for this key if it exists and has the correct type.

pub fn get_binary_generic_mut(
    &mut self,
    key: &str
) -> ValueAccessResult<&mut Vec<u8>>
[src]

Get a mutable reference generic binary value for this key if it exists and has the correct type.

pub fn get_object_id(&self, key: &str) -> ValueAccessResult<&ObjectId>[src]

Get a reference to an object id value for this key if it exists and has the correct type.

pub fn get_object_id_mut(
    &mut self,
    key: &str
) -> ValueAccessResult<&mut ObjectId>
[src]

Get a mutable reference to an object id value for this key if it exists and has the correct type.

pub fn get_datetime(&self, key: &str) -> ValueAccessResult<&DateTime<Utc>>[src]

Get a reference to a UTC datetime value for this key if it exists and has the correct type.

pub fn get_datetime_mut(
    &mut self,
    key: &str
) -> ValueAccessResult<&mut DateTime<Utc>>
[src]

Get a mutable reference to a UTC datetime value for this key if it exists and has the correct type.

pub fn contains_key(&self, key: &str) -> bool[src]

Returns true if the map contains a value for the specified key.

pub fn keys<'a>(&'a self) -> Keys<'a>[src]

Gets a collection of all keys in the document.

pub fn values<'a>(&'a self) -> Values<'a>[src]

Gets a collection of all values in the document.

pub fn len(&self) -> usize[src]

Returns the number of elements in the document.

pub fn is_empty(&self) -> bool[src]

Returns true if the document contains no elements

pub fn insert<KT: Into<String>, BT: Into<Bson>>(
    &mut self,
    key: KT,
    val: BT
) -> Option<Bson>
[src]

Sets the value of the entry with the OccupiedEntry's key, and returns the entry's old value. Accepts any type that can be converted into Bson.

pub fn remove(&mut self, key: &str) -> Option<Bson>[src]

Takes the value of the entry out of the document, and returns it.

pub fn entry(&mut self, k: String) -> Entry[src]

pub fn to_writer<W: Write + ?Sized>(&self, writer: &mut W) -> Result<()>[src]

Attempts to serialize the Document into a byte stream.

pub fn from_reader<R: Read + ?Sized>(reader: &mut R) -> Result<Document>[src]

Attempts to deserialize a Document from a byte stream.

Trait Implementations

impl Clone for Document[src]

impl Debug for Document[src]

impl Default for Document[src]

impl<'de> Deserialize<'de> for Document[src]

fn deserialize<D>(deserializer: D) -> Result<Self, D::Error> where
    D: Deserializer<'de>, 
[src]

Deserialize this value given this Deserializer.

impl Display for Document[src]

impl Extend<(String, Bson)> for Document[src]

impl From<Document> for Bson[src]

impl From<LinkedHashMap<String, Bson, RandomState>> for Document[src]

impl FromIterator<(String, Bson)> for Document[src]

impl IntoIterator for Document[src]

type Item = (String, Bson)

The type of the elements being iterated over.

type IntoIter = DocumentIntoIterator

Which kind of iterator are we turning this into?

impl<'a> IntoIterator for &'a Document[src]

type Item = (&'a String, &'a Bson)

The type of the elements being iterated over.

type IntoIter = DocumentIterator<'a>

Which kind of iterator are we turning this into?

impl PartialEq<Document> for Document[src]

impl Serialize for Document[src]

impl StructuralPartialEq for Document[src]

impl TryFrom<Map<String, Value>> for Document[src]

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

type Error = Error

The type returned in the event of a conversion error.

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<I> IntoIterator for I where
    I: Iterator
[src]

type Item = <I as Iterator>::Item

The type of the elements being iterated over.

type IntoIter = I

Which kind of iterator are we turning this into?

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,