diff --git a/ICD.Common.Utils/ReprBuilder.cs b/ICD.Common.Utils/ReprBuilder.cs index d314408..4c9c2a9 100644 --- a/ICD.Common.Utils/ReprBuilder.cs +++ b/ICD.Common.Utils/ReprBuilder.cs @@ -12,8 +12,7 @@ namespace ICD.Common.Utils { private readonly object m_Instance; - private readonly List m_PropertyOrder; - private readonly Dictionary m_PropertyValues; + private readonly List> m_PropertyOrder; /// /// Constructor. @@ -23,8 +22,7 @@ namespace ICD.Common.Utils { m_Instance = instance; - m_PropertyOrder = new List(); - m_PropertyValues = new Dictionary(); + m_PropertyOrder = new List>(); } /// @@ -45,11 +43,7 @@ namespace ICD.Common.Utils /// public ReprBuilder AppendPropertyRaw(string name, string value) { - m_PropertyOrder.Remove(name); - m_PropertyOrder.Add(name); - - m_PropertyValues[name] = value; - + m_PropertyOrder.Add(new KeyValuePair(name, value)); return this; } @@ -60,7 +54,7 @@ namespace ICD.Common.Utils public override string ToString() { if (m_Instance == null) - return GetValueStringRepresentation(m_Instance); + return GetValueStringRepresentation(null); StringBuilder builder = new StringBuilder(); @@ -69,12 +63,11 @@ namespace ICD.Common.Utils for (int index = 0; index < m_PropertyOrder.Count; index++) { - string property = m_PropertyOrder[index]; - builder.Append(property); - builder.Append('='); + KeyValuePair pair = m_PropertyOrder[index]; - string valueString = m_PropertyValues[property]; - builder.Append(valueString); + builder.Append(pair.Key); + builder.Append('='); + builder.Append(pair.Value); if (index < m_PropertyOrder.Count - 1) builder.Append(", ");