A new exception class called UninitializedParameter.
authoralpar
Sat, 05 Feb 2005 20:05:01 +0000
changeset 1125377e240b050f
parent 1124 12623f7ecb37
child 1126 04e1cb315951
A new exception class called UninitializedParameter.
src/lemon/error.h
src/work/alpar/dijkstra.h
     1.1 --- a/src/lemon/error.h	Sat Feb 05 13:40:01 2005 +0000
     1.2 +++ b/src/lemon/error.h	Sat Feb 05 20:05:01 2005 +0000
     1.3 @@ -126,7 +126,7 @@
     1.4     * in theory, these are preventable, and even detectable before the
     1.5     * program runs (e.g., violations of class invariants).
     1.6     *
     1.7 -   * For a typical example \see UninitializedParameterError.
     1.8 +   * A typical example for this is \ref UninitializedParameter.
     1.9     */
    1.10    class LogicError : public Exception {
    1.11    public:
    1.12 @@ -135,6 +135,19 @@
    1.13      }
    1.14    };
    1.15  
    1.16 +  /**
    1.17 +   * \brief \ref Exception for uninitialized parameters.
    1.18 +   *
    1.19 +   * This error represents problems in the initialization
    1.20 +   * of the parameters of the algorithms.
    1.21 +   */
    1.22 +  class UninitializedParameter : public LogicError {
    1.23 +  public:
    1.24 +    virtual const char* exceptionName() const {
    1.25 +      return "lemon::UninitializedParameter";
    1.26 +    }
    1.27 +  };
    1.28 +
    1.29    
    1.30    /**
    1.31     * \brief One of the two main subclasses of \ref Exception.
     2.1 --- a/src/work/alpar/dijkstra.h	Sat Feb 05 13:40:01 2005 +0000
     2.2 +++ b/src/work/alpar/dijkstra.h	Sat Feb 05 20:05:01 2005 +0000
     2.3 @@ -30,9 +30,6 @@
     2.4  namespace lemon {
     2.5  
     2.6  
     2.7 -  class UninitializedData : public LogicError {};
     2.8 -
     2.9 -
    2.10  /// \addtogroup flowalgs
    2.11  /// @{
    2.12  
    2.13 @@ -90,7 +87,7 @@
    2.14      ///
    2.15      typedef typename Graph::template NodeMap<typename GR::Node> PredNodeMap;
    2.16      ///Instantiates a PredNodeMap.
    2.17 - 
    2.18 +    
    2.19      ///This function instantiates a \ref PredNodeMap. 
    2.20      ///\param G is the graph, to which we would like to define the \ref PredNodeMap
    2.21      static PredNodeMap *createPredNodeMap(const GR &G)
    2.22 @@ -131,7 +128,7 @@
    2.23    };
    2.24    
    2.25    ///%Dijkstra algorithm class.
    2.26 -
    2.27 +  
    2.28    ///This class provides an efficient implementation of %Dijkstra algorithm.
    2.29    ///The edge lengths are passed to the algorithm using a
    2.30    ///\ref concept::ReadMap "ReadMap",
    2.31 @@ -174,8 +171,18 @@
    2.32  #endif
    2.33    class Dijkstra {
    2.34    public:
    2.35 -    ///Exception thrown by dijkstra.
    2.36 -    class UninitializedData : public lemon::UninitializedData {};
    2.37 +    /**
    2.38 +     * \brief \ref Exception for uninitialized parameters.
    2.39 +     *
    2.40 +     * This error represents problems in the initialization
    2.41 +     * of the parameters of the algorithms.
    2.42 +     */
    2.43 +    class UninitializedParameter : public lemon::UninitializedParameter {
    2.44 +    public:
    2.45 +      virtual const char* exceptionName() const {
    2.46 +	return "lemon::Dijsktra::UninitializedParameter";
    2.47 +      }
    2.48 +    };
    2.49  
    2.50      typedef TR Traits;
    2.51      ///The type of the underlying graph.