/// <summary> /// Initializes a <see cref="PropertyMapper"/> that maps a property's assigned value's <see cref="NullAbstractValue"/> to a <see cref="PropertySetAbstractValueKind"/>. /// </summary> /// <param name="propertyName">Name of the property.</param> /// <param name="mapFromNullAbstractValueCallback">Callback that implements the mapping.</param> public PropertyMapper(string propertyName, NullAbstractValueCallback mapFromNullAbstractValueCallback) { PropertyName = propertyName ?? throw new ArgumentNullException(nameof(propertyName)); MapFromNullAbstractValue = mapFromNullAbstractValueCallback ?? throw new ArgumentNullException(nameof(mapFromNullAbstractValueCallback)); }
/// <summary> /// Initializes a <see cref="ConstructorMapper"/> that maps a constructor invocation's arguments' <see cref="NullAbstractValue"/>s to <see cref="PropertySetAbstractValueKind"/>s for the properties being tracked by PropertySetAnalysis. /// </summary> /// <param name="mapFromNullAbstractValueCallback">Callback that implements the mapping.</param> public ConstructorMapper(NullAbstractValueCallback mapFromNullAbstractValue) { this.MapFromNullAbstractValue = mapFromNullAbstractValue ?? throw new ArgumentNullException(nameof(mapFromNullAbstractValue)); this.PropertyAbstractValues = ImmutableArray <PropertySetAbstractValueKind> .Empty; }