Esempio n. 1
0
    void JsonSchema::readDouble(cJSON *childProperties,  PropertiesPtr property)
    {
        cJSON *Max = cJSON_GetObjectItem(childProperties, "maximum");
        if (Max)
        {
            cJSON *exclusiveMax = cJSON_GetObjectItem(childProperties, "exclusiveMaximum");
            if (exclusiveMax)
            {
                if (exclusiveMax->type == cJSON_True)
                    property->setMaxDouble( --(Max->valuedouble));
                else
                    property->setMaxDouble(Max->valuedouble);
            }
            else
                property->setMaxDouble(Max->valuedouble);
        }
        cJSON *Min = cJSON_GetObjectItem(childProperties, "minimum");
        if (Min)
        {
            cJSON *exclusiveMin = cJSON_GetObjectItem(childProperties, "exclusiveMinimum");
            if (exclusiveMin)
            {
                if (exclusiveMin->type == cJSON_True)
                    property->setMinDouble( ++(Min->valuedouble));
                else
                    property->setMinDouble(Min->valuedouble);
            }
            else
                property->setMinDouble(Min->valuedouble);
        }
        cJSON *multipleOf = cJSON_GetObjectItem(childProperties, "multipleOf");
        if (multipleOf)
        {
            property->setMultipleOf(multipleOf->valueint);
        }

    }