public IInterfaceFieldDescriptor Field(NameString name) { InterfaceFieldDescriptor fieldDescriptor = Fields.FirstOrDefault(t => t.Definition.Name.Equals(name)); if (fieldDescriptor is not null) { return(fieldDescriptor); } fieldDescriptor = InterfaceFieldDescriptor.New( Context, name.EnsureNotEmpty(nameof(name))); Fields.Add(fieldDescriptor); return(fieldDescriptor); }
protected override void OnCompleteFields( IDictionary <NameString, InterfaceFieldDefinition> fields, ISet <MemberInfo> handledMembers) { if (Definition.Fields.IsImplicitBinding()) { FieldDescriptorUtilities.AddImplicitFields( this, p => InterfaceFieldDescriptor .New(Context, p) .CreateDefinition(), fields, handledMembers); } base.OnCompleteFields(fields, handledMembers); }