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(); + } + }