in Unix/scriptext/py/PythonBinding.c [465:856]
void Print_Element_Value(
const MI_Value *elementValue,
MI_Type elementType,
size_t level)
{
switch (elementType)
{
case MI_BOOLEAN:
{
PySys_WriteStdout("%s", elementValue->boolean ? "True" : "False");
break;
}
case MI_SINT8:
{
PySys_WriteStdout("%hd", elementValue->sint8);
break;
}
case MI_UINT8:
{
PySys_WriteStdout("%hu", elementValue->uint8);
break;
}
case MI_SINT16:
{
PySys_WriteStdout("%d", elementValue->sint16);
break;
}
case MI_UINT16:
{
PySys_WriteStdout("%u", elementValue->uint16);
break;
}
case MI_SINT32:
{
PySys_WriteStdout("%i", elementValue->sint32);
break;
}
case MI_UINT32:
{
PySys_WriteStdout("%u", elementValue->uint32);
break;
}
case MI_SINT64:
{
PySys_WriteStdout("%lld", elementValue->sint64);
break;
}
case MI_UINT64:
{
PySys_WriteStdout("%llu", elementValue->uint64);
break;
}
case MI_REAL32:
{
PySys_WriteStdout("%g", elementValue->real32);
break;
}
case MI_REAL64:
{
PySys_WriteStdout("%lg", elementValue->real64);
break;
}
case MI_CHAR16:
{
PySys_WriteStdout("%u", elementValue->char16);
break;
}
case MI_DATETIME:
{
MI_Char buf[26];
DatetimeToStr(&elementValue->datetime, buf);
PySys_WriteStdout("%s", buf);
break;
}
case MI_STRING:
{
PySys_WriteStdout("%s", elementValue->string);
break;
}
case MI_BOOLEANA:
{
MI_Uint32 i;
MI_Type nonArrayType = (MI_Type) (elementType & (~MI_ARRAY));
PySys_WriteStdout("{");
for (i = 0; i < elementValue->booleana.size; i++)
{
MI_Value value;
value.boolean = elementValue->booleana.data[i];
Print_Element_Value(&value, nonArrayType, level);
if (i + 1 != elementValue->datetimea.size)
PySys_WriteStdout(", ");
}
PySys_WriteStdout("}");
break;
}
case MI_SINT8A:
{
MI_Uint32 i;
MI_Type nonArrayType = (MI_Type) (elementType & (~MI_ARRAY));
PySys_WriteStdout("{");
for (i = 0; i < elementValue->sint8a.size; i++)
{
MI_Value value;
value.sint8 = elementValue->sint8a.data[i];
Print_Element_Value(&value, nonArrayType, level);
if (i + 1 != elementValue->datetimea.size)
PySys_WriteStdout(", ");
}
PySys_WriteStdout("}");
break;
}
case MI_UINT8A:
{
MI_Uint32 i;
MI_Type nonArrayType = (MI_Type) (elementType & (~MI_ARRAY));
PySys_WriteStdout("{");
for (i = 0; i < elementValue->uint8a.size; i++)
{
MI_Value value;
value.uint8 = elementValue->uint8a.data[i];
Print_Element_Value(&value, nonArrayType, level);
if (i + 1 != elementValue->datetimea.size)
PySys_WriteStdout(", ");
}
PySys_WriteStdout("}");
break;
}
case MI_SINT16A:
{
MI_Uint32 i;
MI_Type nonArrayType = (MI_Type) (elementType & (~MI_ARRAY));
PySys_WriteStdout("{");
for (i = 0; i < elementValue->sint16a.size; i++)
{
MI_Value value;
value.sint16 = elementValue->sint16a.data[i];
Print_Element_Value(&value, nonArrayType, level);
if (i + 1 != elementValue->datetimea.size)
PySys_WriteStdout(", ");
}
PySys_WriteStdout("}");
break;
}
case MI_UINT16A:
{
MI_Uint32 i;
MI_Type nonArrayType = (MI_Type) (elementType & (~MI_ARRAY));
PySys_WriteStdout("{");
for (i = 0; i < elementValue->uint16a.size; i++)
{
MI_Value value;
value.uint16 = elementValue->uint16a.data[i];
Print_Element_Value(&value, nonArrayType, level);
if (i + 1 != elementValue->datetimea.size)
PySys_WriteStdout(", ");
}
PySys_WriteStdout("}");
break;
}
case MI_SINT32A:
{
MI_Uint32 i;
MI_Type nonArrayType = (MI_Type) (elementType & (~MI_ARRAY));
PySys_WriteStdout("{");
for (i = 0; i < elementValue->sint32a.size; i++)
{
MI_Value value;
value.sint32 = elementValue->sint32a.data[i];
Print_Element_Value(&value, nonArrayType, level);
if (i + 1 != elementValue->datetimea.size)
PySys_WriteStdout(", ");
}
PySys_WriteStdout("}");
break;
}
case MI_UINT32A:
{
MI_Uint32 i;
MI_Type nonArrayType = (MI_Type) (elementType & (~MI_ARRAY));
PySys_WriteStdout("{");
for (i = 0; i < elementValue->uint32a.size; i++)
{
MI_Value value;
value.uint32 = elementValue->uint32a.data[i];
Print_Element_Value(&value, nonArrayType, level);
if (i + 1 != elementValue->datetimea.size)
PySys_WriteStdout(", ");
}
PySys_WriteStdout("}");
break;
}
case MI_SINT64A:
{
MI_Uint32 i;
MI_Type nonArrayType = (MI_Type) (elementType & (~MI_ARRAY));
PySys_WriteStdout("{");
for (i = 0; i < elementValue->sint64a.size; i++)
{
MI_Value value;
value.sint64 = elementValue->sint64a.data[i];
Print_Element_Value(&value, nonArrayType, level);
if (i + 1 != elementValue->datetimea.size)
PySys_WriteStdout(", ");
}
PySys_WriteStdout("}");
break;
}
case MI_UINT64A:
{
MI_Uint32 i;
MI_Type nonArrayType = (MI_Type) (elementType & (~MI_ARRAY));
PySys_WriteStdout("{");
for (i = 0; i < elementValue->uint64a.size; i++)
{
MI_Value value;
value.uint64 = elementValue->uint64a.data[i];
Print_Element_Value(&value, nonArrayType, level);
if (i + 1 != elementValue->datetimea.size)
PySys_WriteStdout(", ");
}
PySys_WriteStdout("}");
break;
}
case MI_REAL32A:
{
MI_Uint32 i;
MI_Type nonArrayType = (MI_Type) (elementType & (~MI_ARRAY));
PySys_WriteStdout("{");
for (i = 0; i < elementValue->real32a.size; i++)
{
MI_Value value;
value.real32 = elementValue->real32a.data[i];
Print_Element_Value(&value, nonArrayType, level);
if (i + 1 != elementValue->datetimea.size)
PySys_WriteStdout(", ");
}
PySys_WriteStdout("}");
break;
}
case MI_REAL64A:
{
MI_Uint32 i;
MI_Type nonArrayType = (MI_Type) (elementType & (~MI_ARRAY));
PySys_WriteStdout("{");
for (i = 0; i < elementValue->real64a.size; i++)
{
MI_Value value;
value.real64 = elementValue->real64a.data[i];
Print_Element_Value(&value, nonArrayType, level);
if (i + 1 != elementValue->datetimea.size)
PySys_WriteStdout(", ");
}
PySys_WriteStdout("}");
break;
}
case MI_CHAR16A:
{
MI_Uint32 i;
MI_Type nonArrayType = (MI_Type) (elementType & (~MI_ARRAY));
PySys_WriteStdout("{");
for (i = 0; i < elementValue->char16a.size; i++)
{
MI_Value value;
value.char16 = elementValue->char16a.data[i];
Print_Element_Value(&value, nonArrayType, level);
if (i + 1 != elementValue->datetimea.size)
PySys_WriteStdout(", ");
}
PySys_WriteStdout("}");
break;
}
case MI_DATETIMEA:
{
MI_Uint32 i;
MI_Type nonArrayType = (MI_Type) (elementType & (~MI_ARRAY));
PySys_WriteStdout("{");
for (i = 0; i < elementValue->datetimea.size; i++)
{
MI_Value value;
value.datetime = elementValue->datetimea.data[i];
Print_Element_Value(&value, nonArrayType, level);
if (i + 1 != elementValue->datetimea.size)
PySys_WriteStdout(", ");
}
PySys_WriteStdout("}");
break;
}
case MI_STRINGA:
{
MI_Uint32 i;
PySys_WriteStdout("{");
for (i = 0; i < elementValue->stringa.size; i++)
{
MI_Char *value;
value = elementValue->stringa.data[i];
PySys_WriteStdout(value);
if (i + 1 != elementValue->stringa.size)
PySys_WriteStdout(", ");
}
PySys_WriteStdout("}");
break;
}
case MI_INSTANCE:
{
MI_Instance* inst = elementValue->instance;
Dump_MI_Instance(inst, MI_FALSE, level);
break;
}
case MI_REFERENCE:
{
MI_Instance* inst = elementValue->reference;
PySys_WriteStdout(" REF ");
Dump_MI_Instance(inst, MI_TRUE, level);
break;
}
case MI_INSTANCEA:
{
const MI_InstanceA* inst = &elementValue->instancea;
MI_Uint32 i;
PySys_WriteStdout("\n");
Indent(level);
PySys_WriteStdout("{\n");
for (i = 0; i < inst->size; i++)
{
Dump_MI_Instance(inst->data[i], MI_TRUE, level + 1);
}
Indent(level);
PySys_WriteStdout("}");
break;
}
case MI_REFERENCEA:
{
const MI_InstanceA* inst = &elementValue->instancea;
MI_Uint32 i;
PySys_WriteStdout(" REF ");
PySys_WriteStdout("\n");
Indent(level);
PySys_WriteStdout("{\n");
for (i = 0; i < inst->size; i++)
{
Dump_MI_Instance(inst->data[i], MI_FALSE, level + 1);
}
Indent(level);
PySys_WriteStdout("}");
break;
}
default:
break;
}
}