public static bool HasDefaultConstructor(Type t, bool nonPublic) { ValidationUtils.ArgumentNotNull((object)t, nameof(t)); if (t.IsValueType()) { return(true); } return(ReflectionUtils.GetDefaultConstructor(t, nonPublic) != null); }
public override Func <T> CreateDefaultConstructor <T>(Type type) { ValidationUtils.ArgumentNotNull((object)type, nameof(type)); if (type.IsValueType()) { return((Func <T>)(() => (T)Activator.CreateInstance(type))); } ConstructorInfo constructorInfo = ReflectionUtils.GetDefaultConstructor(type, true); return((Func <T>)(() => (T)constructorInfo.Invoke((object[])null))); }
public static ConstructorInfo GetDefaultConstructor(Type t) { return(ReflectionUtils.GetDefaultConstructor(t, false)); }