From 0faf5a089bea007282397d863c6e27260bdc0137 Mon Sep 17 00:00:00 2001 From: "Tristan B. Velloza Kildaire" Date: Fri, 23 Jun 2023 09:07:23 +0200 Subject: [PATCH] Deserializer - Added `float` and `double` support --- source/jstruct/deserializer.d | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/source/jstruct/deserializer.d b/source/jstruct/deserializer.d index de5a2a3..d27c815 100644 --- a/source/jstruct/deserializer.d +++ b/source/jstruct/deserializer.d @@ -151,8 +151,17 @@ public RecordType fromJSON(RecordType)(JSONValue jsonIn) { mixin("record."~structNames[cnt])~= jsonVal.boolean(); } + else static if(__traits(isSame, ForeachType!(structTypes[cnt]), float)) + { + mixin("record."~structNames[cnt])~= cast(float)jsonVal.floating(); + } + else static if(__traits(isSame, ForeachType!(structTypes[cnt]), double)) + { + mixin("record."~structNames[cnt])~= cast(double)jsonVal.floating(); + } + }