module uim.mongo.commands.usermanagement; import uim.mongo; @safe: struct UserInfo{ string user; string db; } Bson usersInfo(MongoDatabase db) { struct Cmd { int usersInfo = 1; } return db.runCommand(Cmd().serializeToBson()); } Bson usersInfo(MongoDatabase db, string username) { struct Cmd { string usersInfo; } return db.runCommand(Cmd(username).serializeToBson()); } Bson usersInfo(MongoDatabase db, string userName, string dbName) { struct Cmd { UserInfo usersInfo; } return db.runCommand(Cmd(UserInfo(userName, dbName)).serializeToBson()); } Bson usersInfo(MongoDatabase db, string[string] users) { struct Cmd { UserInfo[] usersInfo; } UserInfo[] userInfos; foreach (k, v; users) { userInfos ~= UserInfo(k, v); } return db.runCommand(Cmd(userInfos).serializeToBson()); } Bson usersInfo(MongoDatabase db, string[] users) { struct Cmd { string[] usersInfo; } return db.runCommand(Cmd(users).serializeToBson()); }