     /// - throws: When we can't send the request/receive the response, you don't have sufficient permissions or an error occurred
     public func reIndex() throws {
         let command: Document = [
-                                    "reIndex": self.name
+            "reIndex": self.name
         ]
         
         let document = try firstDocument(in: try database.execute(command: command))
         
         guard document["ok"] == 1 else {
-            throw MongoError.commandFailure(error: document) 
+            throw MongoError.commandFailure(error: document)
         }
     }
     

        let document = try firstDocument(in: try database.execute(command: command))
        
        guard document["ok"] == 1 else {
            throw MongoError.commandFailure(error: document) 
        }
        
        return document["value"] ?? Null()
    }
    
    /// Counts the amount of `Document`s matching the `filter`. Stops counting when the `limit` it reached
    ///
    /// For more information: https://docs.mongodb.com/manual/reference/command/count/#dbcmd.count
    ///
    /// - parameter filter: Optional. If specified limits the returned amount to anything matching this query
    /// - parameter limit: Optional. Limits the amount of scanned `Document`s as specified
    /// - parameter skip: Optional. The amount of Documents to skip before counting
    ///
    /// - throws: When we can't send the request/receive the response, you don't have sufficient permissions or an error occurred
    ///
    /// - returns: The amount of matching `Document`s
    public func count(matching query: Query, limitedTo limit: Int32? = nil, skipping skip: Int32? = nil) throws -> Int {
        return try count(matching: query.queryDocument as Document?, limitedTo: limit, skipping: skip)
    }
    
    /// Returns all distinct values for a key in this collection. Allows filtering using query

    /// For more information: https://docs.mongodb.com/manual/reference/command/collMod/#dbcmd.collMod
    ///
    /// You can use this method, for example, to change the validator on a collection:
    ///
    ///     collection.modify(flags: ["validator": ["name": ["$type": "string"]]])
    ///
    /// - parameter flags: The modification you want to perform. See the MongoDB documentation for more information.
