@@ -973,6 +973,7 @@ Final proxy type
973973+/
974974template serdeGetFinalProxy (T)
975975{
976+ import mir.timestamp: Timestamp;
976977 import std.traits : hasUDA, isAggregateType;
977978 static if (isAggregateType! T || is (T == enum ))
978979 {
@@ -981,6 +982,11 @@ template serdeGetFinalProxy(T)
981982 alias serdeGetFinalProxy = .serdeGetFinalProxy! (serdeGetProxy! T);
982983 }
983984 else
985+ static if (is (typeof (Timestamp(T.init))))
986+ {
987+ alias serdeGetFinalProxy = string ;
988+ }
989+ else
984990 {
985991 alias serdeGetFinalProxy = T;
986992 }
@@ -1013,6 +1019,7 @@ Final deep proxy type
10131019+/
10141020template serdeGetFinalDeepProxy (T)
10151021{
1022+ import mir.timestamp: Timestamp;
10161023 import std.traits : Unqual, hasUDA, isAggregateType, isArray, ForeachType;
10171024 static if (isAggregateType! T || is (T == enum ))
10181025 {
@@ -1021,6 +1028,11 @@ template serdeGetFinalDeepProxy(T)
10211028 alias serdeGetFinalDeepProxy = .serdeGetFinalDeepProxy! (serdeGetProxy! T);
10221029 }
10231030 else
1031+ static if (is (typeof (Timestamp(T.init))))
1032+ {
1033+ alias serdeGetFinalDeepProxy = string ;
1034+ }
1035+ else
10241036 static if (__traits(hasMember, T, " serdeKeysProxy" ))
10251037 {
10261038 alias serdeGetFinalDeepProxy = .serdeGetFinalDeepProxy! (T.serdeKeysProxy);
0 commit comments