public void appendDaysOfWeek(TypeDaysOfWeekKnownValues new_value)
    {
        TypeDaysOfWeek new_full_value = new TypeDaysOfWeek();

        Debug.Assert(new_value != TypeDaysOfWeekKnownValues.DaysOfWeek__none);
        new_full_value.in_known_list = true;
        new_full_value.list_value    = new_value;
        appendDaysOfWeek(new_full_value);
    }
 public void appendDaysOfWeek(TypeDaysOfWeek to_append)
 {
     if (!flagHasDaysOfWeek)
     {
         flagHasDaysOfWeek = true;
         storeDaysOfWeek.Clear();
     }
     Debug.Assert(flagHasDaysOfWeek);
     storeDaysOfWeek.Add(to_append);
 }
    public void appendDaysOfWeek(string chars)
    {
        TypeDaysOfWeekKnownValues known     = stringToDaysOfWeek(chars);
        TypeDaysOfWeek            new_value = new TypeDaysOfWeek();

        if (known == TypeDaysOfWeekKnownValues.DaysOfWeek__none)
        {
            new_value.in_known_list = false;
            new_value.string_value  = chars;
        }
        else
        {
            new_value.in_known_list = true;
            new_value.list_value    = known;
        }
        appendDaysOfWeek(new_value);
    }
            protected override void handle_result(string result)
            {
                TypeDaysOfWeekKnownValues known     = stringToDaysOfWeek(result);
                TypeDaysOfWeek            new_value = new TypeDaysOfWeek();

                if (known == TypeDaysOfWeekKnownValues.DaysOfWeek__none)
                {
                    new_value.in_known_list = false;
                    new_value.string_value  = result;
                }
                else
                {
                    new_value.in_known_list = true;
                    new_value.list_value    = known;
                }
                handle_result(new_value);
            }
    private void  fromJSONDaysOfWeek(JSONValue json_value, bool ignore_extras)
    {
        Debug.Assert(json_value != null);
        JSONArrayValue json_array1 = json_value.array_value();

        if (json_array1 == null)
        {
            throw new Exception("The value for field DaysOfWeek of AlarmQueryStateJSON is not an array.");
        }
        int count1 = json_array1.componentCount();
        List <TypeDaysOfWeek> vector_DaysOfWeek1 = new List <TypeDaysOfWeek>(count1);

        for (int num1 = 0; num1 < count1; ++num1)
        {
            JSONStringValue json_string = json_array1.component(num1).string_value();
            if (json_string == null)
            {
                throw new Exception("The value for an element of field DaysOfWeek of AlarmQueryStateJSON is not a string.");
            }
            TypeDaysOfWeek the_open_enum = new TypeDaysOfWeek();
            switch (json_string.getData()[0])
            {
            case 'F':
                if ((String.Compare(json_string.getData(), 1, "riday", 0, 5, false) == 0) && (json_string.getData().Length == 6))
                {
                    the_open_enum.in_known_list = true;
                    the_open_enum.list_value    = TypeDaysOfWeekKnownValues.DaysOfWeek_Friday;
                    goto open_enum_is_done;
                }
                break;

            case 'M':
                if ((String.Compare(json_string.getData(), 1, "onday", 0, 5, false) == 0) && (json_string.getData().Length == 6))
                {
                    the_open_enum.in_known_list = true;
                    the_open_enum.list_value    = TypeDaysOfWeekKnownValues.DaysOfWeek_Monday;
                    goto open_enum_is_done;
                }
                break;

            case 'S':
                switch (json_string.getData()[1])
                {
                case 'a':
                    if ((String.Compare(json_string.getData(), 2, "turday", 0, 6, false) == 0) && (json_string.getData().Length == 8))
                    {
                        the_open_enum.in_known_list = true;
                        the_open_enum.list_value    = TypeDaysOfWeekKnownValues.DaysOfWeek_Saturday;
                        goto open_enum_is_done;
                    }
                    break;

                case 'u':
                    if ((String.Compare(json_string.getData(), 2, "nday", 0, 4, false) == 0) && (json_string.getData().Length == 6))
                    {
                        the_open_enum.in_known_list = true;
                        the_open_enum.list_value    = TypeDaysOfWeekKnownValues.DaysOfWeek_Sunday;
                        goto open_enum_is_done;
                    }
                    break;

                default:
                    break;
                }
                break;

            case 'T':
                switch (json_string.getData()[1])
                {
                case 'h':
                    if ((String.Compare(json_string.getData(), 2, "ursday", 0, 6, false) == 0) && (json_string.getData().Length == 8))
                    {
                        the_open_enum.in_known_list = true;
                        the_open_enum.list_value    = TypeDaysOfWeekKnownValues.DaysOfWeek_Thursday;
                        goto open_enum_is_done;
                    }
                    break;

                case 'u':
                    if ((String.Compare(json_string.getData(), 2, "esday", 0, 5, false) == 0) && (json_string.getData().Length == 7))
                    {
                        the_open_enum.in_known_list = true;
                        the_open_enum.list_value    = TypeDaysOfWeekKnownValues.DaysOfWeek_Tuesday;
                        goto open_enum_is_done;
                    }
                    break;

                default:
                    break;
                }
                break;

            case 'W':
                if ((String.Compare(json_string.getData(), 1, "ednesday", 0, 8, false) == 0) && (json_string.getData().Length == 9))
                {
                    the_open_enum.in_known_list = true;
                    the_open_enum.list_value    = TypeDaysOfWeekKnownValues.DaysOfWeek_Wednesday;
                    goto open_enum_is_done;
                }
                break;

            default:
                break;
            }
            the_open_enum.in_known_list = false;
            the_open_enum.string_value  = json_string.getData();
            open_enum_is_done :;
            vector_DaysOfWeek1.Add(the_open_enum);
        }
        initDaysOfWeek();
        for (int num1 = 0; num1 < vector_DaysOfWeek1.Count; ++num1)
        {
            appendDaysOfWeek(vector_DaysOfWeek1[num1]);
        }
        for (int num1 = 0; num1 < vector_DaysOfWeek1.Count; ++num1)
        {
        }
    }
 protected override void handle_result(TypeDaysOfWeek result)
 {
     top.value.Add(result);
 }
            protected override void handle_result(TypeDaysOfWeek result)
            {
//@@@        Debug.Assert(!have_value);
                have_value = true;
                value      = result;
            }
 protected abstract void handle_result(TypeDaysOfWeek result);