Ejemplo n.º 1
0
        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());
        }
Ejemplo n.º 2
0
 public void WomenWithPhoneCode(byte codeOffset, UintMultiUnionList union)
 {
     union.Add(Women.ByPhoneCode(codeOffset));
 }
Ejemplo n.º 3
0
        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);
            }
            }
        }