public DeserializationPropertyInfo(TypeInfo target, PropertyInfo property) : base( target.type != null, target) { this.property = property ?? throw new ArgumentNullException(nameof(property)); if (valid) { targetType.BuildGenericArgs(); getValue = GenerateGetter(property); setValue = GenerateSetter(property); if (getValue == null) { throw new ArgumentException(string.Format("Cannot create property getter: {0}.{1}", property.DeclaringType.FullName, property.Name)); } if (setValue == null) { throw new ArgumentException(string.Format("Cannot create property setter: {0}.{1}", property.DeclaringType.FullName, property.Name)); } } }
public DeserializationFieldInfo(TypeInfo target, FieldInfo field) : base( target.type != null, target) { this.field = field ?? throw new ArgumentNullException(nameof(field)); if (valid) { targetType.BuildGenericArgs(); getValue = GenerateGetter(); setValue = GenerateSetter(); if (getValue == null) { throw new ArgumentException(string.Format("Cannot create field getter: {0}.{1}", field.DeclaringType.FullName, field.Name)); } if (setValue == null) { throw new ArgumentException(string.Format("Cannot create field setter: {0}.{1}", field.DeclaringType.FullName, field.Name)); } } }