internal Builder(ReqAndHierL2 immutable) : base(immutable) { this.immutable = immutable; this.l2Field1 = immutable.L2Field1; this.l2Field2 = immutable.L2Field2; }
public new ReqAndHierL2 ToImmutable() { return(this.immutable = this.immutable.With( ImmutableObjectGraph.Optional.For(this.L1Field1), ImmutableObjectGraph.Optional.For(this.L1Field2), ImmutableObjectGraph.Optional.For(this.L2Field1), ImmutableObjectGraph.Optional.For(this.L2Field2))); }
public void RequiredFieldsAppearInMultipleRelatedTypes() { ReqAndHierL2 value = ReqAndHierL2.Create("l1f2Value", "l2f2Value"); Assert.Equal("l1f2Value", value.L1Field2); Assert.Equal("l2f2Value", value.L2Field2); Assert.Null(value.L1Field1); Assert.Null(value.L2Field1); }
public virtual ReqAndHierL2 ToReqAndHierL2( System.String l2Field2, ImmutableObjectGraph.Optional <System.String> l2Field1 = default(ImmutableObjectGraph.Optional <System.String>)) { ReqAndHierL2 that = this as ReqAndHierL2; if (that != null && this.GetType().IsEquivalentTo(typeof(ReqAndHierL2))) { if ((!l2Field1.IsDefined || l2Field1.Value == that.L2Field1) && (l2Field2 == that.L2Field2)) { return(that); } } return(ReqAndHierL2.Create( l1Field1: this.L1Field1, l1Field2: this.L1Field2, l2Field1: l2Field1, l2Field2: l2Field2)); }