in DxDispatch/src/model/JsonParsersGenerated.cpp [245:265]
DML_REDUCE_FUNCTION ParseDmlReduceFunction(const rapidjson::Value& value)
{
if (value.GetType() != rapidjson::Type::kStringType)
{
throw std::invalid_argument("DML_REDUCE_FUNCTION must be a string.");
}
auto valueString = value.GetString();
if (!strcmp(valueString, "DML_REDUCE_FUNCTION_ARGMAX") || !strcmp(valueString, "ARGMAX")) { return DML_REDUCE_FUNCTION_ARGMAX; }
if (!strcmp(valueString, "DML_REDUCE_FUNCTION_ARGMIN") || !strcmp(valueString, "ARGMIN")) { return DML_REDUCE_FUNCTION_ARGMIN; }
if (!strcmp(valueString, "DML_REDUCE_FUNCTION_AVERAGE") || !strcmp(valueString, "AVERAGE")) { return DML_REDUCE_FUNCTION_AVERAGE; }
if (!strcmp(valueString, "DML_REDUCE_FUNCTION_L1") || !strcmp(valueString, "L1")) { return DML_REDUCE_FUNCTION_L1; }
if (!strcmp(valueString, "DML_REDUCE_FUNCTION_L2") || !strcmp(valueString, "L2")) { return DML_REDUCE_FUNCTION_L2; }
if (!strcmp(valueString, "DML_REDUCE_FUNCTION_LOG_SUM") || !strcmp(valueString, "LOG_SUM")) { return DML_REDUCE_FUNCTION_LOG_SUM; }
if (!strcmp(valueString, "DML_REDUCE_FUNCTION_LOG_SUM_EXP") || !strcmp(valueString, "LOG_SUM_EXP")) { return DML_REDUCE_FUNCTION_LOG_SUM_EXP; }
if (!strcmp(valueString, "DML_REDUCE_FUNCTION_MAX") || !strcmp(valueString, "MAX")) { return DML_REDUCE_FUNCTION_MAX; }
if (!strcmp(valueString, "DML_REDUCE_FUNCTION_MIN") || !strcmp(valueString, "MIN")) { return DML_REDUCE_FUNCTION_MIN; }
if (!strcmp(valueString, "DML_REDUCE_FUNCTION_MULTIPLY") || !strcmp(valueString, "MULTIPLY")) { return DML_REDUCE_FUNCTION_MULTIPLY; }
if (!strcmp(valueString, "DML_REDUCE_FUNCTION_SUM") || !strcmp(valueString, "SUM")) { return DML_REDUCE_FUNCTION_SUM; }
if (!strcmp(valueString, "DML_REDUCE_FUNCTION_SUM_SQUARE") || !strcmp(valueString, "SUM_SQUARE")) { return DML_REDUCE_FUNCTION_SUM_SQUARE; }
throw std::invalid_argument(fmt::format("'{}' is not a recognized value for DML_REDUCE_FUNCTION.", valueString));
}