Add JsonPrint, StringMissing

This commit is contained in:
George Suntres
2026-04-18 19:40:51 -04:00
parent f52793a764
commit 1298398922
6 changed files with 112 additions and 2 deletions

View File

@@ -200,8 +200,39 @@ func MapToStruct(m map[string]any, o any) error {
return nil
}
func BsonAnyToMap(v any) any {
switch v.(type) {
case bson.D:
m := map[string]any{}
val := v.(bson.D)
for _, elem := range val {
m[elem.Key] = BsonAnyToMap(elem.Value)
}
return m
case bson.M:
m := map[string]any{}
val := v.(bson.M)
for k, v2 := range val {
m[k] = BsonAnyToMap(v2)
}
return m
case bson.A:
val := v.(bson.A)
arr := make([]any, len(val))
for i, v2 := range val {
arr[i] = BsonAnyToMap(v2)
}
return arr
default:
return v
}
}
func BsonToMap(b bson.M) map[string]any {
result := make(map[string]any)
result := map[string]any{}
for k, v := range b {
switch val := v.(type) {