EHS/src/json/JsonNum.cpp

93 lines
1.4 KiB
C++

#include "json/JsonNum.h"
namespace ehs
{
JsonNum::JsonNum()
: JsonBase(JsonType::NUM), value(0.0f)
{
}
JsonNum::JsonNum(const SInt_64 value)
: JsonBase(JsonType::NUM), value((float)value)
{
}
JsonNum::JsonNum(const UInt_64 value)
: JsonBase(JsonType::NUM), value((float)value)
{
}
JsonNum::JsonNum(const SInt_32 value)
: JsonBase(JsonType::NUM), value((float)value)
{
}
JsonNum::JsonNum(const UInt_32 value)
: JsonBase(JsonType::NUM), value((float)value)
{
}
JsonNum::JsonNum(const SInt_16 value)
: JsonBase(JsonType::NUM), value((float)value)
{
}
JsonNum::JsonNum(const UInt_16 value)
: JsonBase(JsonType::NUM), value((float)value)
{
}
JsonNum::JsonNum(const SInt_8 value)
: JsonBase(JsonType::NUM), value((float)value)
{
}
JsonNum::JsonNum(const UInt_8 value)
: JsonBase(JsonType::NUM), value((float)value)
{
}
JsonNum::JsonNum(const double value)
: JsonBase(JsonType::NUM), value((float)value)
{
}
JsonNum::JsonNum(const float value)
: JsonBase(JsonType::NUM), value(value)
{
}
JsonNum::operator float() const
{
return value;
}
JsonNum::operator float&()
{
return value;
}
Str_8 JsonNum::ToStr(const UInt_64 level, const bool compact) const
{
Str_8 result;
if (!compact)
{
for (UInt_64 l = 0; l < level; ++l)
result += "\t";
}
result += Str_8::FromNum(value);
return result;
}
}