using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Reflection;
namespace Masuit.Tools
{
///
///
///
public static class DeepCopyExt
{
private static readonly object IsStructTypeToDeepCopyDictionaryLocker = new object();
private static Dictionary _isStructTypeToDeepCopyDictionary = new Dictionary();
private static readonly object CompiledCopyFunctionsDictionaryLocker = new object();
private static Dictionary, object>> _compiledCopyFunctionsDictionary = new Dictionary, object>>();
private static readonly Type ObjectType = typeof(object);
private static readonly Type ObjectDictionaryType = typeof(Dictionary