Added some read-only attributes to the cloner implementations
git-svn-id: file:///srv/devel/repo-conversion/nusu@266 d2e56fa2-650e-0410-a79f-9358c0239efd
This commit is contained in:
parent
21754b8e87
commit
f3652ac4db
|
@ -299,7 +299,6 @@ namespace Nuclex.Support.Cloning {
|
||||||
variables.Add(clone);
|
variables.Add(clone);
|
||||||
|
|
||||||
int dimensionCount = clonedType.GetArrayRank();
|
int dimensionCount = clonedType.GetArrayRank();
|
||||||
int baseVariableIndex = variables.Count;
|
|
||||||
Type elementType = clonedType.GetElementType();
|
Type elementType = clonedType.GetElementType();
|
||||||
|
|
||||||
var lengths = new List<ParameterExpression>();
|
var lengths = new List<ParameterExpression>();
|
||||||
|
|
|
@ -263,13 +263,21 @@ namespace Nuclex.Support.Cloning {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Compiled cloners that perform shallow clone operations</summary>
|
/// <summary>Compiled cloners that perform shallow clone operations</summary>
|
||||||
private static ConcurrentDictionary<Type, Func<object, object>> shallowFieldBasedCloners;
|
private static readonly ConcurrentDictionary<
|
||||||
|
Type, Func<object, object>
|
||||||
|
> shallowFieldBasedCloners;
|
||||||
/// <summary>Compiled cloners that perform deep clone operations</summary>
|
/// <summary>Compiled cloners that perform deep clone operations</summary>
|
||||||
private static ConcurrentDictionary<Type, Func<object, object>> deepFieldBasedCloners;
|
private static readonly ConcurrentDictionary<
|
||||||
|
Type, Func<object, object>
|
||||||
|
> deepFieldBasedCloners;
|
||||||
/// <summary>Compiled cloners that perform shallow clone operations</summary>
|
/// <summary>Compiled cloners that perform shallow clone operations</summary>
|
||||||
private static ConcurrentDictionary<Type, Func<object, object>> shallowPropertyBasedCloners;
|
private static readonly ConcurrentDictionary<
|
||||||
|
Type, Func<object, object>
|
||||||
|
> shallowPropertyBasedCloners;
|
||||||
/// <summary>Compiled cloners that perform deep clone operations</summary>
|
/// <summary>Compiled cloners that perform deep clone operations</summary>
|
||||||
private static ConcurrentDictionary<Type, Func<object, object>> deepPropertyBasedCloners;
|
private static readonly ConcurrentDictionary<
|
||||||
|
Type, Func<object, object>
|
||||||
|
> deepPropertyBasedCloners;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -92,7 +92,7 @@ namespace Nuclex.Support.Cloning {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Surrogate the that will be selected for any non-primitive types</summary>
|
/// <summary>Surrogate the that will be selected for any non-primitive types</summary>
|
||||||
private ISerializationSurrogate staticSurrogate;
|
private readonly ISerializationSurrogate staticSurrogate;
|
||||||
/// <summary>Surrogate selector to escalate to if no surrogate can be provided</summary>
|
/// <summary>Surrogate selector to escalate to if no surrogate can be provided</summary>
|
||||||
private ISurrogateSelector chainedSelector;
|
private ISurrogateSelector chainedSelector;
|
||||||
|
|
||||||
|
@ -321,9 +321,9 @@ namespace Nuclex.Support.Cloning {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Serializes objects by storing their fields</summary>
|
/// <summary>Serializes objects by storing their fields</summary>
|
||||||
private static BinaryFormatter fieldBasedFormatter;
|
private static readonly BinaryFormatter fieldBasedFormatter;
|
||||||
/// <summary>Serializes objects by storing their properties</summary>
|
/// <summary>Serializes objects by storing their properties</summary>
|
||||||
private static BinaryFormatter propertyBasedFormatter;
|
private static readonly BinaryFormatter propertyBasedFormatter;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user