public static string  stringFromShipName(TypeShipName the_enum)
    {
        switch (the_enum)
        {
        case TypeShipName.ShipName_Carrier:
            return("Carrier");

        case TypeShipName.ShipName_Battleship:
            return("Battleship");

        case TypeShipName.ShipName_Submarine:
            return("Submarine");

        case TypeShipName.ShipName_Cruiser:
            return("Cruiser");

        case TypeShipName.ShipName_Destroyer:
            return("Destroyer");

        default:
            Debug.Assert(false);
            return(null);
        }
    }
 protected override void handle_result(TypeShipName result)
 {
     top.value.Add(result);
 }
            protected override void handle_result(TypeShipName result)
            {
//@@@        Debug.Assert(!have_value);
                have_value = true;
                value      = result;
            }
 protected abstract void handle_result(TypeShipName result);
 public void setShipName(TypeShipName new_value)
 {
     flagHasShipName = true;
     storeShipName   = new_value;
 }