private bool TryLoad <T>(SavePropertyData data, Func <string, T> loader) { var typeMatch = data.propertyInfo.PropertyType == typeof(T); if (typeMatch) { data.propertyInfo.SetValue( data.contextPropertyInstance, loader(data.name) ); } return(typeMatch); }
private bool TrySave <T>(SavePropertyData data, Action <string, T> saver) { var typeMatch = data.propertyInfo.PropertyType == typeof(T); if (typeMatch) { saver( data.name, (T)data.propertyInfo.GetValue( data.contextPropertyInstance ) ); } return(typeMatch); }