public string Decompile()
{
_TempFlags = 0x00;
string value;
_Container.EnsureBuffer();
try
{
value = DeserializeValue();
}
catch (Exception e)
{
value = "//" + e;
}
finally
{
_Container.MaybeDisposeBuffer();
}
// Array or Inlined object
if ((_TempFlags & DoNotAppendName) != 0)
{
// The tag handles the name etc on its own.
return(value);
}
string arrayindex = String.Empty;
if (ArrayIndex > 0 && Type != PropertyType.BoolProperty)
{
arrayindex += "[" + ArrayIndex + "]";
}
return(Name + arrayindex + "=" + value);
}