public ObjectInstance GetInstanceOrCopiedValue()
{
if (Type == CorInfoType.Class || Type == CorInfoType.String)
{
return this;
}
// Copy ValueType or Primitive
return new ObjectInstance() { I = I, R = R, Type = Type, MethodTable = MethodTable, FieldInstances = (FieldInstances != null) ? FieldInstances.Select(x => x).ToArray() : null };
}