public static Option <Person> FromDto(PersonDto dto) { var firstO = String10.Create(dto.First); var lastO = String10.Create(dto.Last); var ageO = Age.Create(dto.Age); var emailO = Email.Create(dto.Email); var createNameO = Option.Lift2 <String10, String10, PersonalName>(PersonalName.Create); var nameO = createNameO(firstO, lastO); var createPersonO = Option.Lift3 <PersonalName, Age, Email, Person>(Person.Create); var personO = createPersonO(nameO, ageO, emailO); return(personO); }
public static PersonalName Create(String10 first, String10 last) { return(new PersonalName(first, last)); }
public PersonalName(String10 first, String10 last) { this.First = first; this.Last = last; }