public IEnumerable <uint> GetListBy(SexStatus sexStatus, UintMultiUnionList union) { switch (sexStatus) { case SexStatus.Male | SexStatus.Free: return(Free.Men.All); case SexStatus.Male | SexStatus.NotFree: return(NotFree.Men.All); case SexStatus.Male | SexStatus.Complex: return(Complex.Men.All); case SexStatus.Female | SexStatus.Free: return(Free.Women.All); case SexStatus.Female | SexStatus.NotFree: return(NotFree.Women.All); case SexStatus.Female | SexStatus.Complex: return(Complex.Women.All); case SexStatus.Male: return(union.Add(Free.Men.All).Add(NotFree.Men.All).Add(Complex.Men.All)); case SexStatus.Female: return(union.Add(Free.Women.All).Add(NotFree.Women.All).Add(Complex.Women.All)); case SexStatus.Male | SexStatus.Free | SexStatus.NotFree: return(union.Add(Free.Men.All).Add(NotFree.Men.All)); case SexStatus.Female | SexStatus.Free | SexStatus.NotFree: return(union.Add(Free.Women.All).Add(NotFree.Women.All)); case SexStatus.Male | SexStatus.Free | SexStatus.Complex: return(union.Add(Free.Men.All).Add(Complex.Men.All)); case SexStatus.Female | SexStatus.Free | SexStatus.Complex: return(union.Add(Free.Women.All).Add(Complex.Women.All)); case SexStatus.Free | SexStatus.NotFree: return(union.Add(Free.Men.All).Add(Free.Women.All).Add(NotFree.Men.All).Add(NotFree.Women.All)); case SexStatus.Free | SexStatus.Complex: return(union.Add(Free.Men.All).Add(Free.Women.All).Add(Complex.Men.All).Add(Complex.Women.All)); case SexStatus.Complex | SexStatus.NotFree: return(union.Add(Complex.Men.All).Add(Complex.Women.All).Add(NotFree.Men.All).Add(NotFree.Women.All)); case SexStatus.Free: return(union.Add(Free.Men.All).Add(Free.Women.All)); case SexStatus.NotFree: return(union.Add(NotFree.Men.All).Add(NotFree.Women.All)); case SexStatus.Complex: return(union.Add(Complex.Men.All).Add(Complex.Women.All)); case SexStatus.Male | SexStatus.NotFree | SexStatus.Complex: return(union.Add(NotFree.Men.All).Add(Complex.Men.All)); case SexStatus.Female | SexStatus.NotFree | SexStatus.Complex: return(union.Add(NotFree.Women.All).Add(Complex.Women.All)); case SexStatus.Male | SexStatus.AllStatus: return(union.Add(Free.Men.All).Add(NotFree.Men.All).Add(Complex.Men.All)); case SexStatus.Female | SexStatus.AllStatus: return(union.Add(Free.Women.All).Add(NotFree.Women.All).Add(Complex.Women.All)); } throw new InvalidOperationException(sexStatus.ToString()); }
public void WomenWithPhoneCode(byte codeOffset, UintMultiUnionList union) { union.Add(Women.ByPhoneCode(codeOffset)); }
public IEnumerable <uint> GetListBy(SexStatus sexStatus, PhoneCode phoneCode, UintMultiUnionList union) { var codeOffset = PhoneCodeOffset(phoneCode.GetSpan().Slice(1)); switch (sexStatus & SexStatus.AllSex) { case SexStatus.Male: { Free.MenWithPhoneCode(codeOffset, union); NotFree.MenWithPhoneCode(codeOffset, union); Complex.MenWithPhoneCode(codeOffset, union); return(union); } case SexStatus.Female: { Free.WomenWithPhoneCode(codeOffset, union); NotFree.WomenWithPhoneCode(codeOffset, union); Complex.WomenWithPhoneCode(codeOffset, union); return(union); } default: { Free.MenWithPhoneCode(codeOffset, union); NotFree.MenWithPhoneCode(codeOffset, union); Complex.MenWithPhoneCode(codeOffset, union); Free.WomenWithPhoneCode(codeOffset, union); NotFree.WomenWithPhoneCode(codeOffset, union); Complex.WomenWithPhoneCode(codeOffset, union); return(union); } } }