public T GetOriginalReference <T>(string key) where T : class, IEquatable <T>, ICloneable { if (m_DirtyFields[key] == null) { m_DirtyFields[key] = new DirtyReference <T>(default(T)); } return(((DirtyReference <T>)m_DirtyFields[key]).OriginalValue); }
public bool IsReferenceDirty <T>(string key) where T : class, IEquatable <T>, ICloneable { if (m_DirtyFields[key] == null) { m_DirtyFields[key] = new DirtyReference <T>(default(T)); } return(((DirtyReference <T>)m_DirtyFields[key]).IsDirty()); }
//reference public void SetReference <T>(string key, T value) where T : class, IEquatable <T>, ICloneable { if (m_DirtyFields[key] == null) { m_DirtyFields[key] = new DirtyReference <T>(value); } ((DirtyReference <T>)m_DirtyFields[key]).SetValue(value); }