public static string  stringFromDaysOfWeek(TypeDaysOfWeekKnownValues the_enum)
    {
        switch (the_enum)
        {
        case TypeDaysOfWeekKnownValues.DaysOfWeek_Sunday:
            return("Sunday");

        case TypeDaysOfWeekKnownValues.DaysOfWeek_Monday:
            return("Monday");

        case TypeDaysOfWeekKnownValues.DaysOfWeek_Tuesday:
            return("Tuesday");

        case TypeDaysOfWeekKnownValues.DaysOfWeek_Wednesday:
            return("Wednesday");

        case TypeDaysOfWeekKnownValues.DaysOfWeek_Thursday:
            return("Thursday");

        case TypeDaysOfWeekKnownValues.DaysOfWeek_Friday:
            return("Friday");

        case TypeDaysOfWeekKnownValues.DaysOfWeek_Saturday:
            return("Saturday");

        default:
            Debug.Assert(false);
            return(null);
        }
    }
    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(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);
            }