public NodeDataField(IFieldWrapper field, IOperaitonManager operationManager) { field.ThrowIfNullArgument(nameof(field)); operationManager.ThrowIfNullArgument(nameof(operationManager)); this.field = field; this.operationManager = operationManager; }
public NodeDataBuilder(NodeData nodeData, IFieldWrapper fieldWrapper, IValueParseMap defaultValueParseMap) { nodeData.ThrowIfNullArgument(nameof(nodeData)); fieldWrapper.ThrowIfNullArgument(nameof(fieldWrapper)); defaultValueParseMap.ThrowIfNullArgument(nameof(defaultValueParseMap)); this.nodeData = nodeData; this.fieldWrapper = fieldWrapper; object[] attributes = fieldWrapper.MemberInfo.GetCustomAttributes(true); if (attributes.OfType <IUseParser>().Any()) { IValueParser[] overrides = attributes.OfType <IUseParser>().Select(x => x.CreateParser()).ToArray(); valueParseMap = new OverrideValueParseMap(defaultValueParseMap, overrides); } else { valueParseMap = defaultValueParseMap; } }