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); }